Preserve codec trial evidence and retain prior performance implementation parent
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+11
@@ -0,0 +1,11 @@
|
||||
# P23-02 integer window codec r290 checkpoint
|
||||
|
||||
候補 r290/library291 のソースと有限検証の記録を保存する。今回の比較で性能改善を示さず、追加 codec の維持負担が増えるため不採用。次の性能修正元は r274/library275 を保持する。制作 r32 と選定済み未採用作業 r62 は変更しない。
|
||||
|
||||
局所 r292-r02 は 4024/0、Budget 833 行の全 6,589,288 bytes が原結果と一致。整数 codec 33 ケースは整数 28 ケースの実 engine bytes と変更隔離、非整数 5 ケースの拒否を確認。原 S6 は 24/0、whole 比較は各 15/0、全 11,487,732 bytes が原 oracle と一致。独立レビュー済みの有限な観測であり、試験件数を成果単位の完了に換算しない。
|
||||
|
||||
r293-r04 の同期時間は baseline 1,214,852 µs、candidate 1,217,932 µs。隣接単発比較であり、安定した性能差や原因を断定しない。50 ms、P95/D10、必須最終全回帰、通常 OS 操作、同一 Windows 配布版実機、原 17 条件の全受入は未達。P23-02 は着手中、正式完了追加 0。全体は 30 パッケージ / 88 成果単位、正式 9 / 着手 19 / 予定 60。手動 Ctrl 保持 wheel と左保持 drag は延期、免除なし。Windows C08/X8 だけをブロック扱いにする。
|
||||
|
||||
manifest は原ファイルとコピーのサイズ・SHA256を固定する。大きな JSON 3件(局所・whole 入力と台帳反映の実績記録)は gzip で内容保持を検証した。他のコピーは byte 完全一致。原参照の絶対パスを維持しており、SDK・stage・原 oracle・バイナリを含む単独実行パッケージではない。完全な実行証拠はローカル artifacts に保持し、ここではソース、入力、実績、独立レビュー、root 照合、台帳の参照を保存する。原 r287 の失敗も残す。各レビューは適用時の r282 正本を pin しているので、現 r294 では integration-candidate-r294/before または Git 履歴の版を使って解釈する。
|
||||
|
||||
Godot 原ソースの MIT 著作権表示を保存する。先行 r285-r02 checkpoint は保持。checkpoint 配下の .gdignore により、保存した GDScript の class_name が本体 resource 走査へ混ざることを防ぐ。
|
||||
+266
@@ -0,0 +1,266 @@
|
||||
{
|
||||
"scope": "Evidence/source checkpoint; declined codec; retained implementation parent r274/library275",
|
||||
"entries": [
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560",
|
||||
"stored_bytes": 6030,
|
||||
"stored_sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"encoding": "identity",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0",
|
||||
"stored_bytes": 59737,
|
||||
"stored_sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"encoding": "identity",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480",
|
||||
"stored_bytes": 3299,
|
||||
"stored_sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5",
|
||||
"stored_bytes": 15003,
|
||||
"stored_sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a",
|
||||
"stored_bytes": 7670,
|
||||
"stored_sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b",
|
||||
"stored_bytes": 39566,
|
||||
"stored_sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126",
|
||||
"stored_bytes": 22646,
|
||||
"stored_sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8",
|
||||
"stored_bytes": 28577,
|
||||
"stored_sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 40394,
|
||||
"sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49",
|
||||
"stored_bytes": 40394,
|
||||
"stored_sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 59147,
|
||||
"sha256": "147409de969918719f1682ff3bc537192a28d01837bfda6532ce4d1c292e9059",
|
||||
"stored_bytes": 59147,
|
||||
"stored_sha256": "147409de969918719f1682ff3bc537192a28d01837bfda6532ce4d1c292e9059"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.gd",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-local-r292-r02.gd",
|
||||
"encoding": "identity",
|
||||
"bytes": 16880,
|
||||
"sha256": "6e29686f84db92ce977b7f1aedfdae81969626544facb0b0e6e7ca46634c0fb4",
|
||||
"stored_bytes": 16880,
|
||||
"stored_sha256": "6e29686f84db92ce977b7f1aedfdae81969626544facb0b0e6e7ca46634c0fb4"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.py",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-local-r292-r02.py",
|
||||
"encoding": "identity",
|
||||
"bytes": 6976,
|
||||
"sha256": "ffeb4df73c14adc68baa88a32b486d0ba2805da3495d2fbe1801ba0b4ded4628",
|
||||
"stored_bytes": 6976,
|
||||
"stored_sha256": "ffeb4df73c14adc68baa88a32b486d0ba2805da3495d2fbe1801ba0b4ded4628"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04.py",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-impact-whole-r293-r04.py",
|
||||
"encoding": "identity",
|
||||
"bytes": 7697,
|
||||
"sha256": "00a127f686f40b60e9d11df30a56eef78e7ca1835bd104d1d45e7c9b7e632345",
|
||||
"stored_bytes": 7697,
|
||||
"stored_sha256": "00a127f686f40b60e9d11df30a56eef78e7ca1835bd104d1d45e7c9b7e632345"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 21045,
|
||||
"sha256": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1",
|
||||
"stored_bytes": 21045,
|
||||
"stored_sha256": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/execution.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-local-r292-r02/execution.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 12718,
|
||||
"sha256": "5a4b118df6940db957b1c0b788210816303aa5fcb1f4dc8a3a951afce1447929",
|
||||
"stored_bytes": 12718,
|
||||
"stored_sha256": "5a4b118df6940db957b1c0b788210816303aa5fcb1f4dc8a3a951afce1447929"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/input.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-local-r292-r02/input.json.gz",
|
||||
"encoding": "gzip",
|
||||
"bytes": 974387,
|
||||
"sha256": "99722da0e6a2745962da2bc0c58c99a26363e86eb549a3039b06674e15c594b1",
|
||||
"stored_bytes": 228828,
|
||||
"stored_sha256": "1f25f9c35324e102d380beb012ecbbca26f6d1f78f4f762648a8a9c15cd78f5b"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/actual-root-verification.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-impact-whole-r293-r04/actual-root-verification.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 33521,
|
||||
"sha256": "61d1c24434347f25abbdb8d257da8eeb16e86307e6560a9a61102cd26f7974cf",
|
||||
"stored_bytes": 33521,
|
||||
"stored_sha256": "61d1c24434347f25abbdb8d257da8eeb16e86307e6560a9a61102cd26f7974cf"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/execution.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-impact-whole-r293-r04/execution.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 33451,
|
||||
"sha256": "44d6c26b797a99e7729d1eb77e725330b2b95bd643876eb41cd11237f2488848",
|
||||
"stored_bytes": 33451,
|
||||
"stored_sha256": "44d6c26b797a99e7729d1eb77e725330b2b95bd643876eb41cd11237f2488848"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/input.json",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-impact-whole-r293-r04/input.json.gz",
|
||||
"encoding": "gzip",
|
||||
"bytes": 978430,
|
||||
"sha256": "d6c18c43360b052f76065c8c0cd655ef121ef296bb937126567fc8e7d957e033",
|
||||
"stored_bytes": 229590,
|
||||
"stored_sha256": "34942b3594539d24d4b73b428f8c7967db707a8d2068efe2a0b4d5fcff188fa7"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/whole.gd",
|
||||
"checkpoint_path": "p23-02-native-integer-window-codec-impact-whole-r293-r04/whole.gd",
|
||||
"encoding": "identity",
|
||||
"bytes": 4444,
|
||||
"sha256": "66317ae90b82e8f8b8631c3458d29b2c7acaebfa5ffca449bb6f8e4b1cbc2d73",
|
||||
"stored_bytes": 4444,
|
||||
"stored_sha256": "66317ae90b82e8f8b8631c3458d29b2c7acaebfa5ffca449bb6f8e4b1cbc2d73"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json",
|
||||
"checkpoint_path": "p23-02-integer-window-codec-array-source-r289/source.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 291,
|
||||
"sha256": "cd89af6dd2258fe71036edf9f92ce6302d823b68c257405e2a56795726e87834",
|
||||
"stored_bytes": 291,
|
||||
"stored_sha256": "cd89af6dd2258fe71036edf9f92ce6302d823b68c257405e2a56795726e87834"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp",
|
||||
"checkpoint_path": "p23-02-integer-window-codec-array-source-r289/array.cpp",
|
||||
"encoding": "identity",
|
||||
"bytes": 27906,
|
||||
"sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b",
|
||||
"stored_bytes": 27906,
|
||||
"stored_sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref-source.json",
|
||||
"checkpoint_path": "p23-02-integer-window-codec-array-source-r289/ref-source.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 306,
|
||||
"sha256": "633234e67598321413393912f4b52a51b191df5b4adc944d402b10ddd5cc27eb",
|
||||
"stored_bytes": 306,
|
||||
"stored_sha256": "633234e67598321413393912f4b52a51b191df5b4adc944d402b10ddd5cc27eb"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref_counted.h",
|
||||
"checkpoint_path": "p23-02-integer-window-codec-array-source-r289/ref_counted.h",
|
||||
"encoding": "identity",
|
||||
"bytes": 7628,
|
||||
"sha256": "05ef9e22f969dd4e93d5682e898b86e0ed646bf6d21a0225de9c7d68193bf074",
|
||||
"stored_bytes": 7628,
|
||||
"stored_sha256": "05ef9e22f969dd4e93d5682e898b86e0ed646bf6d21a0225de9c7d68193bf074"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r294.json",
|
||||
"checkpoint_path": "p23-02-current-progress-disposition-r294.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 53135,
|
||||
"sha256": "360747fb5ae1484b3e8b9eee30538ffe5d59a478c607dc55fe9606c42680a614",
|
||||
"stored_bytes": 53135,
|
||||
"stored_sha256": "360747fb5ae1484b3e8b9eee30538ffe5d59a478c607dc55fe9606c42680a614"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/input.json",
|
||||
"checkpoint_path": "p23-02-progress-integration-candidate-r294/input.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 12748,
|
||||
"sha256": "f1d821645a60f5ff17ae38dc4cc317bb40c282ba5d49110c9acedf33f94cdb52",
|
||||
"stored_bytes": 12748,
|
||||
"stored_sha256": "f1d821645a60f5ff17ae38dc4cc317bb40c282ba5d49110c9acedf33f94cdb52"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-r294/execution.json",
|
||||
"checkpoint_path": "p23-02-progress-integration-r294/execution.json.gz",
|
||||
"encoding": "gzip",
|
||||
"bytes": 535261,
|
||||
"sha256": "1d9d628f98adfed4126cfbc14fbf0c5e2fa1a912e4f4def48ca7848d34ee6fa5",
|
||||
"stored_bytes": 98803,
|
||||
"stored_sha256": "4e7fb9234c71d0e839d4e9cfb0ef9dc865489ed2e03acd6934491835e8c368eb"
|
||||
},
|
||||
{
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-r294/plan_validation.json",
|
||||
"checkpoint_path": "p23-02-progress-integration-r294/plan_validation.json",
|
||||
"encoding": "identity",
|
||||
"bytes": 8285,
|
||||
"sha256": "ba4cab2029acc4f4430fd2a8794b01dd3ffdf01bddfcb14986246898a017a881",
|
||||
"stored_bytes": 8285,
|
||||
"stored_sha256": "ba4cab2029acc4f4430fd2a8794b01dd3ffdf01bddfcb14986246898a017a881"
|
||||
},
|
||||
{
|
||||
"original_path": "/private/tmp/thetree-integrate-integer-window-codec-r294.py",
|
||||
"checkpoint_path": "thetree-integrate-integer-window-codec-r294.py",
|
||||
"encoding": "identity",
|
||||
"bytes": 15270,
|
||||
"sha256": "bc9b10e3f79f287f370c848d7e3026c72e83b2513104cb0657233374e640abe8",
|
||||
"stored_bytes": 15270,
|
||||
"stored_sha256": "bc9b10e3f79f287f370c848d7e3026c72e83b2513104cb0657233374e640abe8"
|
||||
}
|
||||
]
|
||||
}
|
||||
+759
@@ -0,0 +1,759 @@
|
||||
{
|
||||
"plan_id": "P23-02",
|
||||
"source_matrix": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r63.json",
|
||||
"bytes": 6242307,
|
||||
"sha256": "e70fdb658d2375be1ac28e1733e2bc33e04a3b9b132daa8200fae031570438a1"
|
||||
},
|
||||
"scope": "Original exact17 condition names retained; historical missing details archived without adopting stale-version success as current acceptance",
|
||||
"production": "r32",
|
||||
"selected_working_candidate": "r62 unadopted",
|
||||
"source_candidate": "r290/library291 finite local292-r02 and originalS6/whole293-r04; performance unmet, unselected and unadopted",
|
||||
"candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"conditions": [
|
||||
{
|
||||
"id": "C01",
|
||||
"condition": "パン",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"通常OSでcamera drag/モード切替・位置と対象の維持を確認。",
|
||||
"制作は独立受理済みr32へ採用済み。r06通常操作証拠は履歴/不変部分の適用範囲に限り、同一採用版への適用性と原全操作条件を確認する。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。",
|
||||
"manual_inputs_deferred_not_waived": true
|
||||
},
|
||||
{
|
||||
"id": "C02",
|
||||
"condition": "上下スクロール",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"r06のpan mode wheel上下は営業ON実時間x3と1024x576で有限取得済み。Ctrlzoom・対象保持を最終同候補で確認し、原全受入へ統合。",
|
||||
"制作は独立受理済みr32へ採用済み。r06通常操作証拠は履歴/不変部分の適用範囲に限り、同一採用版への適用性と原全操作条件を確認する。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "C03",
|
||||
"condition": "ズーム",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"r06通常OSの通常wheel上限4.0/下限0.5・追加入力clamp・同じ完成客室click/選択保持・Home復帰は1024x576停止1020で取得し独立受理。全Runtime literal保持。同source全回帰は既受理。残るCtrl-wheel/アンカー適用性と原全条件最終受入を統合。",
|
||||
"Ctrl通常入力は2つの現API経路で未成立を独立審査。modifier-only拒否/ctrl-right-click後の非修飾wheelを記録し同経路を重複しない。製品guardを変更せず未検証維持。",
|
||||
"制作は独立受理済みr32へ採用済み。r06通常操作証拠は履歴/不変部分の適用範囲に限り、同一採用版への適用性と原全操作条件を確認する。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。",
|
||||
"manual_inputs_deferred_not_waived": true
|
||||
},
|
||||
{
|
||||
"id": "C04",
|
||||
"condition": "建設グリッド",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"r06通常UIでHome後のgrid配置command7 OK、FRONT2セル、350G/資材5、工事995完了と占有、無効UNSUPPORTED/OVERLAP拒否全Runtime literal保持、完成Save1020別PIDLoadは有限取得・独立審査済み。同source最終候補の全回帰172/14759/0を独立受理済み。原条件全体への適用性と残る原操作/Windows等を最終全条件受入へ統合。",
|
||||
"制作は独立受理済みr32へ採用済み。r06通常操作証拠は履歴/不変部分の適用範囲に限り、同一採用版への適用性と原全操作条件を確認する。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "C05",
|
||||
"condition": "接続警告",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"r06通常OSで実入口pathのCONNECTED緑線→対象変更DISCONNECTED破線/amber X/警告→CONNECTED占有地点のPNGとstateを有限取得・独立審査済み。配置可否は到達性と独立に既存規則へ一致。r05 native topology変更根拠は適用条件を限定して保持。同source全回帰172/14759/0を独立受理済み。原11.4への最終全条件受入を統合。",
|
||||
"制作は独立受理済みr32へ採用済み。r06通常操作証拠は履歴/不変部分の適用範囲に限り、同一採用版への適用性と原全操作条件を確認する。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "C06",
|
||||
"condition": "HUD配置",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"実1024x576 clientの上部resource/time/weather/rank、下部layer/build/manage・Load・palette・施設詳細開閉とscroll/zoomの有限画像/操作を取得・独立審査済み。同source全回帰172/14759/0を独立受理済み。試験済み対象範囲の適用性を最終全条件受入へ統合、未試験全modalの成功へ拡張しない。",
|
||||
"制作は独立受理済みr32へ採用済み。r06通常操作証拠は履歴/不変部分の適用範囲に限り、同一採用版への適用性と原全操作条件を確認する。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "C07",
|
||||
"condition": "小画面で読めて押せる",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"r06実Mac client1024x576(CUA画像1024x608 header32)で主要HUD/通常Load/施設クリック/palette/pan wheel/zoom/Home/Gを有限取得・独立審査済み。この寸法はQA入力であり最低仕様値でない。同source全回帰172/14759/0を独立受理済み。原小画面条件の対象操作範囲と最終全条件受入を統合、Windows倍率はC08に残す。",
|
||||
"制作は独立受理済みr32へ採用済み。r06通常操作証拠は履歴/不変部分の適用範囲に限り、同一採用版への適用性と原全操作条件を確認する。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "C08",
|
||||
"condition": "Windows表示倍率で読めて押せる",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"同一対象版Windows実機の表示倍率・実Viewport・読みやすさ・クリック到達性。倍率やD10性能仕様は未確定値を発明しない。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "blocked",
|
||||
"current_missing": "Windows実機の同一最終配布版・倍率・viewport・操作証拠"
|
||||
},
|
||||
{
|
||||
"id": "C09",
|
||||
"condition": "x3時の操作追随",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"r06小規模営業ON実時間x3の通常操作証拠は履歴/不変適用範囲のみ保持。制作r32と最終採用候補の応答追随・原操作/Windowsを最終受入へ整合する。",
|
||||
"制作r32全172/14769・限定採用を保持。作業r62の全木36/部分goal14/互換4範囲/全647比較のみ有限受理、r58不変warm証拠のみ条件付き再利用。約2秒同期処理、P95/D10/性能予算、通常OS647以降/x3/終了/小画面/延期保持入力2件/同一Windows実機倍率、同版最終影響・全172が未達。成果単位未完了。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "Latest r290/library291 finite local292-r02 and original S6/whole293-r04 accepted. Single whole tick1217932us; 50ms未達. Stable gain/P95/D10/50ms final performance, final172, general reentry/provider ownership, normal OS/realtime x3/exit/small-screen/same Windows and original17 remain unaccepted. Old287 codec failure and 292 metadata rejection retained; experimental codec declined, next implementation parent r274/library275 retained; no stable regression claim or adoption."
|
||||
},
|
||||
{
|
||||
"id": "X1",
|
||||
"condition": "原本条件とUI操作が一致",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"原本11.1/11.4と実OS操作の全9条件対応が必要。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "X2",
|
||||
"condition": "Runtimeの実利用・会計・行動へ接続",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"実World/建設command/会計/到達性とpreview/hit/警告を接続。cameraだけの操作は全typed不変を確認。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "X3",
|
||||
"condition": "途中保存・再起動で再現",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"P23-01 fresh保存再開を再利用可能だが、今回のcamera/建設/警告に変更がある場合は保存後の座標・選択・対象/後続操作を対象版で確認。camera位置の永続化自体は原文から追加要求しない。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "X4",
|
||||
"condition": "異常/境界/中断を検証",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"限界zoom/外部release/focus-lossは151再利用。新上下scroll/警告や小Viewportの境界・中断を必要範囲で追加。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "X5",
|
||||
"condition": "関連回帰PASS",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"制作r32の同一source全172/14769のみ別途受理済み。未採用作業r62の同版最終影響試験・全回帰は未実施。固めた正確な最終版で必須検証を実行し、旧版成功を転用しない。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "Latest r290/library291 finite local292-r02 and original S6/whole293-r04 accepted. Single whole tick1217932us; 50ms未達. Stable gain/P95/D10/50ms final performance, final172, general reentry/provider ownership, normal OS/realtime x3/exit/small-screen/same Windows and original17 remain unaccepted. Old287 codec failure and 292 metadata rejection retained; experimental codec declined, next implementation parent r274/library275 retained; no stable regression claim or adoption."
|
||||
},
|
||||
{
|
||||
"id": "X6",
|
||||
"condition": "要件別ログとソースハッシュを保存",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"現証拠pinは保存。追加OS/候補のraw・source・環境/設定・receiptが必要。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "原条件全体を同一最終版で検証して受入統合。旧版/局所成功を全条件へ拡張しない。"
|
||||
},
|
||||
{
|
||||
"id": "X7",
|
||||
"condition": "既存代表負荷の性能回帰を計測",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"r06同代表入力のOpsOFF/手動1・3分batch・全typed保存と実描画の有限計測を新実行し独立受理。r05性能値をr06へ転用せず当該版記録。圧縮によるschedule/観測費用を保持。営業ON実時間x3/最大場面/GPU/Windows/P28未受入予算は証明しない。原性能acceptanceへの適用性は残る。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "in_progress",
|
||||
"current_missing": "Latest r290/library291 finite local292-r02 and original S6/whole293-r04 accepted. Single whole tick1217932us; 50ms未達. Stable gain/P95/D10/50ms final performance, final172, general reentry/provider ownership, normal OS/realtime x3/exit/small-screen/same Windows and original17 remain unaccepted. Old287 codec failure and 292 metadata rejection retained; experimental codec declined, next implementation parent r274/library275 retained; no stable regression claim or adoption."
|
||||
},
|
||||
{
|
||||
"id": "X8",
|
||||
"condition": "Windows部分実機確認。不可なら未検証を残す",
|
||||
"accepted": false,
|
||||
"historical_missing_conditions": [
|
||||
"原X8の未検証保持分岐は使用できるが、P23-02固有のWindows表示倍率acceptanceを置換できない。Windows実機条件が未達なら本単位正式完了不可。"
|
||||
],
|
||||
"required_target": "same final selected/adopted candidate and matching Windows distribution; not yet fixed",
|
||||
"state": "blocked",
|
||||
"current_missing": "Windows実機の同一最終配布版・倍率・viewport・操作証拠"
|
||||
}
|
||||
],
|
||||
"finite_evidence": {
|
||||
"host_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-guest-pipeline-build-actual-independent-review-r188.json",
|
||||
"bytes": 22485,
|
||||
"sha256": "e9461bacffca3e04a353a5f5ec44c079119b36944276c958810f6d2b3c917982"
|
||||
},
|
||||
"local_equivalence": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-guest-pipeline-local-actual-independent-review-r191.json",
|
||||
"bytes": 27410,
|
||||
"sha256": "0f2f85b66c884f6dad5c8fe07b870c933de8a331c3929767d0d283e5c8a671c3"
|
||||
},
|
||||
"boundaries": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-guest-pipeline-boundaries-actual-independent-review-r195.json",
|
||||
"bytes": 28648,
|
||||
"sha256": "838041fe102339c2ae400097c45b7c2ed7cd4f01bed24a73791997fe503abd8b"
|
||||
},
|
||||
"whole_pair": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-guest-pipeline-whole-pair-actual-independent-review-r196.json",
|
||||
"bytes": 35169,
|
||||
"sha256": "31978758b7f37684cddc369a263e3e793b34bbcafc29323fe7b78cd4af2a6c4f"
|
||||
},
|
||||
"repeat": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-guest-pipeline-repeat-actual-independent-review-r198.json",
|
||||
"bytes": 61491,
|
||||
"sha256": "242ced8381e1b97a4cf95baaa47296e636cf1671f6c131c5764db53c7299610a"
|
||||
},
|
||||
"dependency": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-guest-pipeline-dependency-actual-independent-review-r200.json",
|
||||
"bytes": 26477,
|
||||
"sha256": "bd5dbdb3418f5c52930fd13ce64c3d63553b0ebe5fa8190ba76d1c0089c0b670"
|
||||
},
|
||||
"impact": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-guest-pipeline-original-impact-actual-independent-review-r205.json",
|
||||
"bytes": 47542,
|
||||
"sha256": "1bf3591089ae1cd2611232519f48782f19fcd81a940ea5b9d8e74fb78efaa672"
|
||||
},
|
||||
"reconstruction_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-path-reconstruction-static-independent-review-r204.json",
|
||||
"bytes": 9853,
|
||||
"sha256": "ba1825e354d780f4dd850121e0855eef7b992ccc34eb09abc78c3bd435fa32f0"
|
||||
},
|
||||
"reconstruction_host": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-path-reconstruction-build-actual-independent-review-r206.json",
|
||||
"bytes": 22336,
|
||||
"sha256": "f301618d94f075ad35e34a6ded28f0572290402012b9ea3f0edc8db23107f630"
|
||||
},
|
||||
"reconstruction_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-actual-independent-review-r211.json",
|
||||
"bytes": 59222,
|
||||
"sha256": "c4cec015ac35bc228828573392dd327f7932e58aab48c8318b41d32d71cc9733"
|
||||
},
|
||||
"reconstruction_whole_pair": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-whole-pair-actual-independent-review-r214.json",
|
||||
"bytes": 39797,
|
||||
"sha256": "6f3de61c816a36f69cdb0c5decd63ec4699319c1e5d958a4b4dfce5dd1cb0450"
|
||||
},
|
||||
"travel_ownership_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-travel-ownership-static-independent-review-r216.json",
|
||||
"bytes": 16772,
|
||||
"sha256": "7d0a81837e46675bdfaf37dee795747106221d108e3e73cdf5a73396933c96ca"
|
||||
},
|
||||
"travel_ownership_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-travel-ownership-build-actual-independent-review-r217.json",
|
||||
"bytes": 23541,
|
||||
"sha256": "822274a1593357048716cd6ab3955d6fee8030d5b24110f750507a665762b64d"
|
||||
},
|
||||
"travel_ownership_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-travel-ownership-local-actual-independent-review-r220.json",
|
||||
"bytes": 46573,
|
||||
"sha256": "328a132f9e8e27e5f8855057c293c24234e18a892556499826a12432b8516c47"
|
||||
},
|
||||
"travel_ownership_whole_pair": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-travel-ownership-whole-pair-actual-independent-review-r222.json",
|
||||
"bytes": 31243,
|
||||
"sha256": "05658d3b265b18ee1215b1efe5d26dd67b3c092291ba5bcccdf71ef1f4391a39"
|
||||
},
|
||||
"tag_helpers_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-tag-helpers-local-actual-independent-review-r229.json",
|
||||
"bytes": 73403,
|
||||
"sha256": "52455c2d50dc7ab39cbe82b7eb4a45add7b3a7bc52de6d679377e26d13740c20"
|
||||
},
|
||||
"tag_helpers_whole_pair": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-tag-helpers-whole-pair-actual-independent-review-r231.json",
|
||||
"bytes": 28386,
|
||||
"sha256": "061c29335071fdd9fd5927bfa8afb9ba5e70d3e1f2cde670138bab173e3e7316"
|
||||
},
|
||||
"cache_key_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-key-static-independent-review-r233.json",
|
||||
"bytes": 15063,
|
||||
"sha256": "0230bb7e4504dca15ba09d8533bbee3e8e1146156c64fccf7f73557b0d3f035e"
|
||||
},
|
||||
"cache_key_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-key-build-actual-independent-review-r234.json",
|
||||
"bytes": 22383,
|
||||
"sha256": "461caceb47c1157e0ab245228e0014ef2158214d1607c8d6955438346233ad43"
|
||||
},
|
||||
"cache_key_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-key-local-actual-independent-review-r235.json",
|
||||
"bytes": 73562,
|
||||
"sha256": "4b2b3b3d1a5f629b01ab09f4951b852b07c333be7acd7b6f5c4bf763fdf6e1ba"
|
||||
},
|
||||
"cache_key_whole_pair": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-key-whole-pair-actual-independent-review-r236-r02.json",
|
||||
"bytes": 41166,
|
||||
"sha256": "c95a1fc70a8904393f63f14a9c8a7d1f78d268f4069b2261357049f59ac518c2"
|
||||
},
|
||||
"current233_diagnostic": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-actual-independent-review-r238.json",
|
||||
"bytes": 36734,
|
||||
"sha256": "e41634755f116006c91ad251b48eb8b71286a53a6a687d6f371366f3140cc66d"
|
||||
},
|
||||
"local_names_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-static-independent-review-r239.json",
|
||||
"bytes": 16574,
|
||||
"sha256": "2f0f7b40135bce4cdcc0eaff11c77917f230f2f456cc0cf6983f5f8d5bffc173"
|
||||
},
|
||||
"local_names_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-build-actual-independent-review-r240.json",
|
||||
"bytes": 23261,
|
||||
"sha256": "e7038f5e0b5c43ed67498bfb89719a0244d722cbbdce2bbb87cfe865f64b5849"
|
||||
},
|
||||
"local_names_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-local-actual-independent-review-r241.json",
|
||||
"bytes": 62299,
|
||||
"sha256": "d27c97c4f02cc8922ec09da89554c674367663144e083062819987710a825f0b"
|
||||
},
|
||||
"local_names_whole_pair": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-whole-pair-actual-independent-review-r242.json",
|
||||
"bytes": 36188,
|
||||
"sha256": "cebd772e810e63980e12b6249e6527d56a4018f1d0e32d3c61e756f7637c85dc"
|
||||
},
|
||||
"native_internal_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-internal-diagnostic-static-independent-review-r244.json",
|
||||
"bytes": 12750,
|
||||
"sha256": "14efa12774345de9d84829fe4e078c67f96db8b1d9637e58fcb83e32234403fa"
|
||||
},
|
||||
"native_internal_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-internal-diagnostic-build-actual-independent-review-r245-r02.json",
|
||||
"bytes": 24471,
|
||||
"sha256": "857e69ce3c7a4f0fe0572c1b2ddf520ac353a0618fff5220817fdf14c264c8af"
|
||||
},
|
||||
"native_internal_diagnostic": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-internal-diagnostic-actual-independent-review-r246-r02.json",
|
||||
"bytes": 30072,
|
||||
"sha256": "fe51580fa199aff262f041e33ac9a2217b359a7598cae706ccb5bfe5b8acdc15"
|
||||
},
|
||||
"cached_path_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-summary-static-independent-review-r248-r02.json",
|
||||
"bytes": 15237,
|
||||
"sha256": "235d2c105b9f9adaf5edb56e84105fb5a45f31f261e694ba9af1d9177caa0842"
|
||||
},
|
||||
"cached_path_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-summary-build-actual-independent-review-r249.json",
|
||||
"bytes": 22986,
|
||||
"sha256": "2194fea2b73ea7e949e7299e8d645b9996dfed53dd9b7c55f92846912db82d6b"
|
||||
},
|
||||
"cached_path_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-summary-local-actual-independent-review-r250-r02.json",
|
||||
"bytes": 66773,
|
||||
"sha256": "eb47284789bcf96e7103ee3f308c7ba02e0151916c53ab9540a810d903f07fa3"
|
||||
},
|
||||
"invalid_cache_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-invalid-cached-path-local-actual-independent-review-r251-r02.json",
|
||||
"bytes": 36346,
|
||||
"sha256": "91ae087447c60dce44bf58b5851ce39958700f063779fa6484eb12bfbf6f5f7f"
|
||||
},
|
||||
"cached_path_whole_pair": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-whole-pair-actual-independent-review-r253-r02.json",
|
||||
"bytes": 37005,
|
||||
"sha256": "f4c2b2c17da88ddf1f4f65bc2aacb53d5e5f062447df46e61bf724f7f3200d3c"
|
||||
},
|
||||
"budget_callback_diagnostic": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-budget-callback-diagnostic-actual-independent-review-r255-r03.json",
|
||||
"bytes": 26049,
|
||||
"sha256": "99b58ff2156508d80db87c98faa5cbce18563bbcf57de74a192ec71133f2ec86"
|
||||
},
|
||||
"budget_native_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-static-independent-review-r257-r04.json",
|
||||
"bytes": 10125,
|
||||
"sha256": "9d2e1fd3c5dd528d4cad4de66bf636ea79a67ccb9749af2dcb788ab21c3c0272"
|
||||
},
|
||||
"budget_native_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-build-actual-independent-review-r258-r02.json",
|
||||
"bytes": 21448,
|
||||
"sha256": "af1ef4994f9d38fb60cf10e94ba116a260b6146cef4b719bf563ed0d583e8ed3"
|
||||
},
|
||||
"budget_native_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-actual-independent-review-r260-r02.json",
|
||||
"bytes": 29240,
|
||||
"sha256": "2766609c663f0bf408e994267a97265d511e52b61450567aa7939e2c4ab428c9"
|
||||
},
|
||||
"budget_native_impact_whole": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-impact-whole-actual-independent-review-r262.json",
|
||||
"bytes": 37515,
|
||||
"sha256": "530a10149df9138948f037937fda669f7f8d3b420a70260b4ecb5c4f96298782"
|
||||
},
|
||||
"walk_edges_host_build": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-build-actual-independent-review-r266-r02.json",
|
||||
"bytes": 23678,
|
||||
"sha256": "63eebafd26d536dc5c7bdf9d4dd0880d75fe9f701a7a4da84225cade7d83ff2f"
|
||||
},
|
||||
"walk_edges_failed_build_r266": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-build-actual-independent-review-r266.json",
|
||||
"bytes": 17339,
|
||||
"sha256": "48429db6104b26f6c892e5e997562b606c956b494903e4e1a93c944383870e71"
|
||||
},
|
||||
"walk_edges_static_r265_r03": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-static-independent-review-r265-r03.json",
|
||||
"bytes": 16528,
|
||||
"sha256": "ee61c1b689b92e12c653701f801b99cccf94ef64e3aeb018c06c7a14259d1778"
|
||||
},
|
||||
"walk_edges_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-local-actual-independent-review-r268-r03.json",
|
||||
"bytes": 42249,
|
||||
"sha256": "2ef93cc1de37636ddc46ffcd313473d8aa9375e74ce361df1367db3c90fdee66"
|
||||
},
|
||||
"walk_edges_local_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-local-root-verification-r268-r03.json",
|
||||
"bytes": 34902,
|
||||
"sha256": "7922c0df867f414a511bf0f4fc7336f73f9632682001efba32c911d137503708"
|
||||
},
|
||||
"walk_edges_impact_whole": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-impact-whole-actual-independent-review-r270.json",
|
||||
"bytes": 36922,
|
||||
"sha256": "8d389bbce84c830880c693d32b6860a31ff75e8a7d584f9f4af0492bca5e9c95"
|
||||
},
|
||||
"walk_edges_impact_whole_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-impact-whole-r270/actual-root-verification.json",
|
||||
"bytes": 30734,
|
||||
"sha256": "f6f992c92aec12f012037a23e76cc3d78b24ec9a5bbd9b45feb9b013d0e008e9"
|
||||
},
|
||||
"residual_sampling": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-residual-sampling-actual-independent-review-r272-r03.json",
|
||||
"bytes": 30534,
|
||||
"sha256": "79b4d014f082a47bda3d9f86713321255be6881aceaefb4de7601d21a48916b7"
|
||||
},
|
||||
"residual_sampling_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-residual-sampling-r272-r03/actual-root-verification.json",
|
||||
"bytes": 25953,
|
||||
"sha256": "22462a79745aa07629fa30ee7ad2297db4bdefd2c4a340a2fea30fd4e615ec20"
|
||||
},
|
||||
"residual_symbol_mapping": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-residual-symbol-map-actual-independent-review-r273-r04.json",
|
||||
"bytes": 14823,
|
||||
"sha256": "ffd7d7817b7f999bc77c695e567b2b6749b7cb1f6eab78d79aadfdd23c384fdc"
|
||||
},
|
||||
"residual_symbol_mapping_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-residual-symbol-map-r273-r04/actual-root-verification.json",
|
||||
"bytes": 12383,
|
||||
"sha256": "8a10686f212c92344f7c90523e8751e7068dd3fa5e174c0d693f59090c376cb1"
|
||||
},
|
||||
"pure_tag_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-static-independent-review-r274.json",
|
||||
"bytes": 8909,
|
||||
"sha256": "f13ed2a32320d85c02011943633be7a4e01f2409f019fadab8dde1680d58f642"
|
||||
},
|
||||
"pure_tag_static_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-static-root-verification-r274.json",
|
||||
"bytes": 5150,
|
||||
"sha256": "8570795a1f86ac90c053d208ccfad2c9966d912c26fe46380a22a2dd946de860"
|
||||
},
|
||||
"pure_tag_host": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-actual-independent-review-r275.json",
|
||||
"bytes": 21552,
|
||||
"sha256": "54576596f82b8aceca440c1a5514ce811125e977c64c210675feecbb3901929f"
|
||||
},
|
||||
"pure_tag_host_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-actual-root-verification-r275.json",
|
||||
"bytes": 15146,
|
||||
"sha256": "3216bc889cbde7aaa375060cbbf34457ca97ba49b4785f61ecc88c777a0dd8be"
|
||||
},
|
||||
"pure_tag_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-actual-independent-review-r278-r04.json",
|
||||
"bytes": 28145,
|
||||
"sha256": "671f15fa542465cf6a7e88ee272a2ce67049fffcca2483205f999cfeb2075253"
|
||||
},
|
||||
"pure_tag_local_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/actual-root-verification.json",
|
||||
"bytes": 17143,
|
||||
"sha256": "00e01cce5240ebd3accddbfc88f8776ac4cd4dfa887df3b8ee319eb16c45913f"
|
||||
},
|
||||
"pure_tag_impact_whole": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-actual-independent-review-r281.json",
|
||||
"bytes": 46359,
|
||||
"sha256": "1876c883e898fdfb8c1c4fb84ee5950930719d0e623b3f010fad0312402166b4"
|
||||
},
|
||||
"pure_tag_impact_whole_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/actual-root-verification.json",
|
||||
"bytes": 28310,
|
||||
"sha256": "1d3d3a0d804d508e7daf11551c30997b0ef048660ceaafb814fd7e07104ae292"
|
||||
},
|
||||
"provider_fallback_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-independent-review-r280.json",
|
||||
"bytes": 15586,
|
||||
"sha256": "c25202cb2b17e74b7c097572b61c8d60f76e9b26074c637de116b29c48faf118"
|
||||
},
|
||||
"provider_fallback_static_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-root-verification-r280.json",
|
||||
"bytes": 7214,
|
||||
"sha256": "7928ab71bf6ec7a03762b1ac1705557e7b9729880cec5df043937b266bb2ecdd"
|
||||
},
|
||||
"integer_codec_static": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
"integer_codec_static_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
},
|
||||
"integer_codec_host": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
"integer_codec_host_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
},
|
||||
"integer_codec_local": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"bytes": 40394,
|
||||
"sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49"
|
||||
},
|
||||
"integer_codec_local_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"bytes": 21045,
|
||||
"sha256": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1"
|
||||
},
|
||||
"integer_codec_impact_whole": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json",
|
||||
"bytes": 59147,
|
||||
"sha256": "147409de969918719f1682ff3bc537192a28d01837bfda6532ce4d1c292e9059"
|
||||
},
|
||||
"integer_codec_impact_whole_root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/actual-root-verification.json",
|
||||
"bytes": 33521,
|
||||
"sha256": "61d1c24434347f25abbdb8d257da8eeb16e86307e6560a9a61102cd26f7974cf"
|
||||
},
|
||||
"integer_codec_rejected_local287": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
"integer_codec_rejected_preparation292": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r292.json",
|
||||
"bytes": 21378,
|
||||
"sha256": "b2f9de6e72d6fa4ea4d9f855d461819eda1760c8e7edc387684c1fa181a89af1"
|
||||
}
|
||||
},
|
||||
"accepted_condition_count": 0,
|
||||
"remaining_condition_count": 17,
|
||||
"Windows_only_blocked_ids": [
|
||||
"C08",
|
||||
"X8"
|
||||
],
|
||||
"manual_deferred_not_waived": true,
|
||||
"unit_accepted": false,
|
||||
"formal_completion_allowed": false,
|
||||
"packages": 30,
|
||||
"delivery_units": 88,
|
||||
"partial_credit": false,
|
||||
"test_counts_used_as_completion": false,
|
||||
"next_action": "r290/library291は今回の単発比較で性能改善を示さず追加codecの維持負担があるため不採用とし、次の性能修正元はr274/library275を保持する。r290/library291の局所・原S6影響・全保存同値証拠を保持し、代表同期負荷の必須性能未達を解消する関連修正を1件に絞る。未変更版の性能反復や全回帰を重複せず、関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは延期・未達・免除なし。",
|
||||
"source_previous_matrix": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r282.json",
|
||||
"bytes": 43837,
|
||||
"sha256": "b622368694390e214d7d74521cb515968380adadc821f87ca7c6432860e762bd"
|
||||
},
|
||||
"latest_whole_validated_trial": "r290/library291 finite originalS6/whole293-r04",
|
||||
"latest_whole_candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"latest_whole_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"next_implementation_parent_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"bytes": 4511,
|
||||
"sha256": "6bd46c589bc57ab5afad1d7195f7293ec450aafeed055e394a3a880744666ca3"
|
||||
},
|
||||
"next_implementation_parent_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"rejected_previous_metadata_review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r267.json",
|
||||
"bytes": 14383,
|
||||
"sha256": "f70190ec9082ad13a97ab0abf428a196c2b8d089dc3c9a5a33a4b95c3ccfcaa6"
|
||||
},
|
||||
"latest_local_validated_trial": "r290/library291 finite Budget+integercodec local292-r02",
|
||||
"latest_local_candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"latest_local_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"next_implementation_parent": "r274/library275 private candidate: finite local278-r04 and originalS6/whole281 accepted; performance unmet and unadopted",
|
||||
"latest_instrumented_diagnostic": "r239/library240 r255-r03; original record_sample path_query7586 calls/inclusive135814us/max555us, instrumentedtick1310226us; no CPU/gain/budget acceptance",
|
||||
"latest_implementation_candidate": "r274/library275 finite local278-r04 and impact/whole281 accepted; performance unmet, unselected and unadopted",
|
||||
"latest_implementation_candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"bytes": 4511,
|
||||
"sha256": "6bd46c589bc57ab5afad1d7195f7293ec450aafeed055e394a3a880744666ca3"
|
||||
},
|
||||
"latest_implementation_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"next_test_candidate": "One necessary performance change against retained r274/library275 then final-version mandatory validation",
|
||||
"latest_locally_validated_candidate": "r290/library291 finite292-r02",
|
||||
"latest_whole_validated_candidate": "r290/library291 finite293-r04",
|
||||
"historical_next_implementation_parent_r276": {
|
||||
"next_implementation_parent": "r239/library240; r248 adoption declined for benefit not demonstrated",
|
||||
"next_implementation_parent_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/input.json",
|
||||
"bytes": 766007,
|
||||
"sha256": "e23d6b7c021f468050632bbc7cb386846b3ac0b509746c321871c23922150a35"
|
||||
},
|
||||
"next_implementation_parent_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-build-r240/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 334416,
|
||||
"sha256": "6e1b5efd70a69882da9f72a67129cc53010bc8755d228d1a9ce7d0d1b1039f82"
|
||||
}
|
||||
},
|
||||
"next_implementation_parent_source": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_numeric_core.cpp",
|
||||
"bytes": 54002,
|
||||
"sha256": "ce20a90adb8a410dc1b6cbf607b7bfa8bf21eaef158c5c6bfc7a9bbcc703d2b2"
|
||||
},
|
||||
"latest_residual_sampling": "r265/266 sampled by272-r03 partial OS window; exact-section symbol map273-r04; no CPU ratio/cause/performance acceptance",
|
||||
"historical_source_candidate_fields_r277": {
|
||||
"source_candidate": "r248-r02/library249 finite local250-r02/251-r02 and whole253-r02; adoption declined, next implementation parent r239/library240",
|
||||
"candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-summary-candidate-r248-r02/input.json",
|
||||
"bytes": 978265,
|
||||
"sha256": "c17c89c7bdf4bf6e378081956473253da1618a0183bf2c3e48cb1fed9d2bb551"
|
||||
},
|
||||
"library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-summary-build-r249/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 350960,
|
||||
"sha256": "7bb5898fe0ce8199c1175e5fb642abf8c9365e2f044cdc5807e6f6170a7475d6"
|
||||
}
|
||||
},
|
||||
"native_trial_stage_status": "local292-r02 and whole293-r04 reused shared209/parent239 original1299; Budget257 transient and project restored after owned exit; no production290 stage created",
|
||||
"historical_next_implementation_parent_r279": "r274/library275 source-only private candidate: static and host only, no fixture stage yet; local ABI/equivalence next, unadopted",
|
||||
"historical_candidate_fields_before_r294": {
|
||||
"source_candidate": "r274/library275 finite local278-r04 and whole281 only; performance unmet and unadopted",
|
||||
"candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"bytes": 4511,
|
||||
"sha256": "6bd46c589bc57ab5afad1d7195f7293ec450aafeed055e394a3a880744666ca3"
|
||||
},
|
||||
"library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"latest_implementation_candidate": "r274/library275 finite local278-r04 and impact/whole281 accepted; performance unmet, unselected and unadopted",
|
||||
"latest_implementation_candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"bytes": 4511,
|
||||
"sha256": "6bd46c589bc57ab5afad1d7195f7293ec450aafeed055e394a3a880744666ca3"
|
||||
},
|
||||
"latest_implementation_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"latest_local_validated_trial": "r274/library275 local278-r04 finite tag/callback/ownership only; no general reentry/provider ownership acceptance",
|
||||
"latest_local_candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"bytes": 4511,
|
||||
"sha256": "6bd46c589bc57ab5afad1d7195f7293ec450aafeed055e394a3a880744666ca3"
|
||||
},
|
||||
"latest_local_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"latest_whole_validated_trial": "r274/library275 finite originalS6/whole281",
|
||||
"latest_whole_candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"bytes": 4511,
|
||||
"sha256": "6bd46c589bc57ab5afad1d7195f7293ec450aafeed055e394a3a880744666ca3"
|
||||
},
|
||||
"latest_whole_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"next_implementation_parent": "r274/library275 private candidate: finite local278-r04 and originalS6/whole281 accepted; performance unmet and unadopted",
|
||||
"next_implementation_parent_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"bytes": 4511,
|
||||
"sha256": "6bd46c589bc57ab5afad1d7195f7293ec450aafeed055e394a3a880744666ca3"
|
||||
},
|
||||
"next_implementation_parent_library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
}
|
||||
},
|
||||
"declined_trial": {
|
||||
"candidate_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"single_pair": {
|
||||
"baseline_us": 1214852,
|
||||
"candidate_us": 1217932,
|
||||
"ratio": 1.0025352882491037,
|
||||
"reduction_percent": -0.25352882491035944,
|
||||
"scope": "One adjacent cold paused speed1 headless observation only; no stable/P95/budget acceptance"
|
||||
},
|
||||
"reason": "No improvement demonstrated in the single adjacent pair; stable performance benefit unproved and optional codec adds maintenance complexity",
|
||||
"stable_regression_claimed": false,
|
||||
"candidate_adopted": false
|
||||
}
|
||||
}
|
||||
+970
@@ -0,0 +1,970 @@
|
||||
/**************************************************************************/
|
||||
/* array.cpp */
|
||||
/**************************************************************************/
|
||||
/* This file is part of: */
|
||||
/* GODOT ENGINE */
|
||||
/* https://godotengine.org */
|
||||
/**************************************************************************/
|
||||
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
|
||||
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
|
||||
/* */
|
||||
/* Permission is hereby granted, free of charge, to any person obtaining */
|
||||
/* a copy of this software and associated documentation files (the */
|
||||
/* "Software"), to deal in the Software without restriction, including */
|
||||
/* without limitation the rights to use, copy, modify, merge, publish, */
|
||||
/* distribute, sublicense, and/or sell copies of the Software, and to */
|
||||
/* permit persons to whom the Software is furnished to do so, subject to */
|
||||
/* the following conditions: */
|
||||
/* */
|
||||
/* The above copyright notice and this permission notice shall be */
|
||||
/* included in all copies or substantial portions of the Software. */
|
||||
/* */
|
||||
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
|
||||
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
|
||||
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
|
||||
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
|
||||
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
|
||||
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
|
||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
/**************************************************************************/
|
||||
|
||||
#include "array.h"
|
||||
|
||||
STATIC_ASSERT_INCOMPLETE_TYPE(class, Dictionary);
|
||||
STATIC_ASSERT_INCOMPLETE_TYPE(class, Object);
|
||||
STATIC_ASSERT_INCOMPLETE_TYPE(class, String);
|
||||
|
||||
#include "core/math/math_funcs.h"
|
||||
#include "core/object/script_language.h"
|
||||
#include "core/templates/hashfuncs.h"
|
||||
#include "core/templates/vector.h"
|
||||
#include "core/variant/callable.h"
|
||||
#include "core/variant/container_type_validate.h"
|
||||
#include "core/variant/dictionary.h"
|
||||
|
||||
struct ArrayPrivate {
|
||||
SafeRefCount refcount;
|
||||
Vector<Variant> array;
|
||||
Variant *read_only = nullptr; // If enabled, a pointer is used to a temporary value that is used to return read-only values.
|
||||
ContainerTypeValidate typed;
|
||||
|
||||
ArrayPrivate() {}
|
||||
ArrayPrivate(std::initializer_list<Variant> p_init) :
|
||||
array(p_init) {}
|
||||
};
|
||||
|
||||
void Array::_ref(const Array &p_from) const {
|
||||
ArrayPrivate *_fp = p_from._p;
|
||||
|
||||
ERR_FAIL_NULL(_fp); // Should NOT happen.
|
||||
|
||||
if (_fp == _p) {
|
||||
return; // whatever it is, nothing to do here move along
|
||||
}
|
||||
|
||||
bool success = _fp->refcount.ref();
|
||||
|
||||
ERR_FAIL_COND(!success); // should really not happen either
|
||||
|
||||
_unref();
|
||||
|
||||
_p = _fp;
|
||||
}
|
||||
|
||||
void Array::_unref() const {
|
||||
if (!_p) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (_p->refcount.unref()) {
|
||||
if (_p->read_only) {
|
||||
memdelete(_p->read_only);
|
||||
}
|
||||
memdelete(_p);
|
||||
}
|
||||
_p = nullptr;
|
||||
}
|
||||
|
||||
Array::Iterator Array::begin() {
|
||||
return Iterator(_p->array.ptrw(), _p->read_only);
|
||||
}
|
||||
|
||||
Array::Iterator Array::end() {
|
||||
return Iterator(_p->array.ptrw() + _p->array.size(), _p->read_only);
|
||||
}
|
||||
|
||||
Array::ConstIterator Array::begin() const {
|
||||
return ConstIterator(_p->array.ptr());
|
||||
}
|
||||
|
||||
Array::ConstIterator Array::end() const {
|
||||
return ConstIterator(_p->array.ptr() + _p->array.size());
|
||||
}
|
||||
|
||||
Variant &Array::operator[](int p_idx) {
|
||||
if (unlikely(_p->read_only)) {
|
||||
*_p->read_only = _p->array[p_idx];
|
||||
return *_p->read_only;
|
||||
}
|
||||
return _p->array.write[p_idx];
|
||||
}
|
||||
|
||||
const Variant &Array::operator[](int p_idx) const {
|
||||
return _p->array[p_idx];
|
||||
}
|
||||
|
||||
int Array::size() const {
|
||||
return _p->array.size();
|
||||
}
|
||||
|
||||
bool Array::is_empty() const {
|
||||
return _p->array.is_empty();
|
||||
}
|
||||
|
||||
void Array::clear() {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
_p->array.clear();
|
||||
}
|
||||
|
||||
bool Array::operator==(const Array &p_array) const {
|
||||
return recursive_equal(p_array, 0);
|
||||
}
|
||||
|
||||
bool Array::operator!=(const Array &p_array) const {
|
||||
return !recursive_equal(p_array, 0);
|
||||
}
|
||||
|
||||
bool Array::recursive_equal(const Array &p_array, int recursion_count) const {
|
||||
// Cheap checks
|
||||
if (_p == p_array._p) {
|
||||
return true;
|
||||
}
|
||||
const Vector<Variant> &a1 = _p->array;
|
||||
const Vector<Variant> &a2 = p_array._p->array;
|
||||
const int size = a1.size();
|
||||
if (size != a2.size()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// Heavy O(n) check
|
||||
if (recursion_count > MAX_RECURSION) {
|
||||
ERR_PRINT("Max recursion reached");
|
||||
return true;
|
||||
}
|
||||
recursion_count++;
|
||||
for (int i = 0; i < size; i++) {
|
||||
if (!a1[i].hash_compare(a2[i], recursion_count, false)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Array::operator<(const Array &p_array) const {
|
||||
int a_len = size();
|
||||
int b_len = p_array.size();
|
||||
|
||||
int min_cmp = MIN(a_len, b_len);
|
||||
|
||||
for (int i = 0; i < min_cmp; i++) {
|
||||
if (operator[](i) < p_array[i]) {
|
||||
return true;
|
||||
} else if (p_array[i] < operator[](i)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return a_len < b_len;
|
||||
}
|
||||
|
||||
bool Array::operator<=(const Array &p_array) const {
|
||||
return !operator>(p_array);
|
||||
}
|
||||
bool Array::operator>(const Array &p_array) const {
|
||||
return p_array < *this;
|
||||
}
|
||||
bool Array::operator>=(const Array &p_array) const {
|
||||
return !operator<(p_array);
|
||||
}
|
||||
|
||||
uint32_t Array::hash() const {
|
||||
return recursive_hash(0);
|
||||
}
|
||||
|
||||
uint32_t Array::recursive_hash(int recursion_count) const {
|
||||
if (recursion_count > MAX_RECURSION) {
|
||||
ERR_PRINT("Max recursion reached");
|
||||
return 0;
|
||||
}
|
||||
|
||||
uint32_t h = hash_murmur3_one_32(Variant::ARRAY);
|
||||
|
||||
recursion_count++;
|
||||
for (int i = 0; i < _p->array.size(); i++) {
|
||||
h = hash_murmur3_one_32(_p->array[i].recursive_hash(recursion_count), h);
|
||||
}
|
||||
return hash_fmix32(h);
|
||||
}
|
||||
|
||||
void Array::operator=(const Array &p_array) {
|
||||
if (this == &p_array) {
|
||||
return;
|
||||
}
|
||||
_ref(p_array);
|
||||
}
|
||||
|
||||
void Array::assign(const Array &p_array) {
|
||||
const ContainerTypeValidate &typed = _p->typed;
|
||||
const ContainerTypeValidate &source_typed = p_array._p->typed;
|
||||
|
||||
if (typed == source_typed || typed.type == Variant::NIL || (source_typed.type == Variant::OBJECT && typed.can_reference(source_typed))) {
|
||||
// from same to same or
|
||||
// from anything to variants or
|
||||
// from subclasses to base classes
|
||||
_p->array = p_array._p->array;
|
||||
return;
|
||||
}
|
||||
|
||||
const Variant *source = p_array._p->array.ptr();
|
||||
int size = p_array._p->array.size();
|
||||
|
||||
if ((source_typed.type == Variant::NIL && typed.type == Variant::OBJECT) || (source_typed.type == Variant::OBJECT && source_typed.can_reference(typed))) {
|
||||
// from variants to objects or
|
||||
// from base classes to subclasses
|
||||
for (int i = 0; i < size; i++) {
|
||||
const Variant &element = source[i];
|
||||
if (element.get_type() != Variant::NIL && (element.get_type() != Variant::OBJECT || !typed.validate_object(element, "assign"))) {
|
||||
ERR_FAIL_MSG(vformat(R"(Unable to convert array index %d from "%s" to "%s".)", i, Variant::get_type_name(element.get_type()), Variant::get_type_name(typed.type)));
|
||||
}
|
||||
}
|
||||
_p->array = p_array._p->array;
|
||||
return;
|
||||
}
|
||||
if (typed.type == Variant::OBJECT || source_typed.type == Variant::OBJECT) {
|
||||
ERR_FAIL_MSG(vformat(R"(Cannot assign contents of "Array[%s]" to "Array[%s]".)", Variant::get_type_name(source_typed.type), Variant::get_type_name(typed.type)));
|
||||
}
|
||||
|
||||
Vector<Variant> array;
|
||||
array.resize(size);
|
||||
Variant *data = array.ptrw();
|
||||
|
||||
if (source_typed.type == Variant::NIL && typed.type != Variant::OBJECT) {
|
||||
// from variants to primitives
|
||||
for (int i = 0; i < size; i++) {
|
||||
const Variant *value = source + i;
|
||||
if (value->get_type() == typed.type) {
|
||||
data[i] = *value;
|
||||
continue;
|
||||
}
|
||||
if (!Variant::can_convert_strict(value->get_type(), typed.type)) {
|
||||
ERR_FAIL_MSG(vformat(R"(Unable to convert array index %d from "%s" to "%s".)", i, Variant::get_type_name(value->get_type()), Variant::get_type_name(typed.type)));
|
||||
}
|
||||
Callable::CallError ce;
|
||||
Variant::construct(typed.type, data[i], &value, 1, ce);
|
||||
ERR_FAIL_COND_MSG(ce.error, vformat(R"(Unable to convert array index %d from "%s" to "%s".)", i, Variant::get_type_name(value->get_type()), Variant::get_type_name(typed.type)));
|
||||
}
|
||||
} else if (Variant::can_convert_strict(source_typed.type, typed.type)) {
|
||||
// from primitives to different convertible primitives
|
||||
for (int i = 0; i < size; i++) {
|
||||
const Variant *value = source + i;
|
||||
Callable::CallError ce;
|
||||
Variant::construct(typed.type, data[i], &value, 1, ce);
|
||||
ERR_FAIL_COND_MSG(ce.error, vformat(R"(Unable to convert array index %d from "%s" to "%s".)", i, Variant::get_type_name(value->get_type()), Variant::get_type_name(typed.type)));
|
||||
}
|
||||
} else {
|
||||
ERR_FAIL_MSG(vformat(R"(Cannot assign contents of "Array[%s]" to "Array[%s]".)", Variant::get_type_name(source_typed.type), Variant::get_type_name(typed.type)));
|
||||
}
|
||||
|
||||
_p->array = array;
|
||||
}
|
||||
|
||||
void Array::push_back(const Variant &p_value) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND(!_p->typed.validate(value, "push_back"));
|
||||
_p->array.push_back(std::move(value));
|
||||
}
|
||||
|
||||
void Array::append_array(const Array &p_array) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
|
||||
if (!is_typed() || _p->typed.can_reference(p_array._p->typed)) {
|
||||
_p->array.append_array(p_array._p->array);
|
||||
return;
|
||||
}
|
||||
|
||||
Vector<Variant> validated_array = p_array._p->array;
|
||||
Variant *write = validated_array.ptrw();
|
||||
for (int i = 0; i < validated_array.size(); ++i) {
|
||||
ERR_FAIL_COND(!_p->typed.validate(write[i], "append_array"));
|
||||
}
|
||||
|
||||
_p->array.append_array(validated_array);
|
||||
}
|
||||
|
||||
Error Array::resize(int p_new_size) {
|
||||
ERR_FAIL_COND_V_MSG(_p->read_only, ERR_LOCKED, "Array is in read-only state.");
|
||||
Variant::Type &variant_type = _p->typed.type;
|
||||
int old_size = _p->array.size();
|
||||
Error err = _p->array.resize_initialized(p_new_size);
|
||||
if (!err && variant_type != Variant::NIL && variant_type != Variant::OBJECT) {
|
||||
Variant *write = _p->array.ptrw();
|
||||
for (int i = old_size; i < p_new_size; i++) {
|
||||
VariantInternal::initialize(&write[i], variant_type);
|
||||
}
|
||||
}
|
||||
return err;
|
||||
}
|
||||
|
||||
Error Array::reserve(int p_new_size) {
|
||||
ERR_FAIL_COND_V_MSG(_p->read_only, ERR_LOCKED, "Array is in read-only state.");
|
||||
return _p->array.reserve(p_new_size);
|
||||
}
|
||||
|
||||
Error Array::insert(int p_pos, const Variant &p_value) {
|
||||
ERR_FAIL_COND_V_MSG(_p->read_only, ERR_LOCKED, "Array is in read-only state.");
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND_V(!_p->typed.validate(value, "insert"), ERR_INVALID_PARAMETER);
|
||||
|
||||
if (p_pos < 0) {
|
||||
// Relative offset from the end.
|
||||
p_pos = _p->array.size() + p_pos;
|
||||
}
|
||||
|
||||
ERR_FAIL_INDEX_V_MSG(p_pos, _p->array.size() + 1, ERR_INVALID_PARAMETER, vformat("The calculated index %d is out of bounds (the array has %d elements). Leaving the array untouched.", p_pos, _p->array.size()));
|
||||
|
||||
return _p->array.insert(p_pos, std::move(value));
|
||||
}
|
||||
|
||||
void Array::fill(const Variant &p_value) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND(!_p->typed.validate(value, "fill"));
|
||||
_p->array.fill(std::move(value));
|
||||
}
|
||||
|
||||
void Array::erase(const Variant &p_value) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND(!_p->typed.validate(value, "erase"));
|
||||
_p->array.erase(value);
|
||||
}
|
||||
|
||||
Variant Array::front() const {
|
||||
ERR_FAIL_COND_V_MSG(_p->array.is_empty(), Variant(), "Can't take value from empty array.");
|
||||
return operator[](0);
|
||||
}
|
||||
|
||||
Variant Array::back() const {
|
||||
ERR_FAIL_COND_V_MSG(_p->array.is_empty(), Variant(), "Can't take value from empty array.");
|
||||
return operator[](_p->array.size() - 1);
|
||||
}
|
||||
|
||||
Variant Array::pick_random() const {
|
||||
ERR_FAIL_COND_V_MSG(_p->array.is_empty(), Variant(), "Can't take value from empty array.");
|
||||
return operator[](Math::rand() % _p->array.size());
|
||||
}
|
||||
|
||||
int Array::find(const Variant &p_value, int p_from) const {
|
||||
if (_p->array.is_empty()) {
|
||||
return -1;
|
||||
}
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND_V(!_p->typed.validate(value, "find"), -1);
|
||||
|
||||
int ret = -1;
|
||||
|
||||
if (p_from < 0 || size() == 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
for (int i = p_from; i < size(); i++) {
|
||||
if (StringLikeVariantComparator::compare(_p->array[i], value)) {
|
||||
ret = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int Array::find_custom(const Callable &p_callable, int p_from) const {
|
||||
int ret = -1;
|
||||
|
||||
if (p_from < 0 || size() == 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
const Variant *argptrs[1];
|
||||
|
||||
for (int i = p_from; i < size(); i++) {
|
||||
const Variant &val = _p->array[i];
|
||||
argptrs[0] = &val;
|
||||
Variant res;
|
||||
Callable::CallError ce;
|
||||
p_callable.callp(argptrs, 1, res, ce);
|
||||
if (unlikely(ce.error != Callable::CallError::CALL_OK)) {
|
||||
ERR_FAIL_V_MSG(ret, vformat("Error calling method from 'find_custom': %s.", Variant::get_callable_error_text(p_callable, argptrs, 1, ce)));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND_V_MSG(res.get_type() != Variant::Type::BOOL, ret, "Error on method from 'find_custom': Return type of callable must be boolean.");
|
||||
if (res.operator bool()) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int Array::rfind(const Variant &p_value, int p_from) const {
|
||||
if (_p->array.is_empty()) {
|
||||
return -1;
|
||||
}
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND_V(!_p->typed.validate(value, "rfind"), -1);
|
||||
|
||||
if (p_from < 0) {
|
||||
// Relative offset from the end
|
||||
p_from = _p->array.size() + p_from;
|
||||
}
|
||||
if (p_from < 0 || p_from >= _p->array.size()) {
|
||||
// Limit to array boundaries
|
||||
p_from = _p->array.size() - 1;
|
||||
}
|
||||
|
||||
for (int i = p_from; i >= 0; i--) {
|
||||
if (StringLikeVariantComparator::compare(_p->array[i], value)) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
int Array::rfind_custom(const Callable &p_callable, int p_from) const {
|
||||
if (_p->array.is_empty()) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (p_from < 0) {
|
||||
// Relative offset from the end.
|
||||
p_from = _p->array.size() + p_from;
|
||||
}
|
||||
if (p_from < 0 || p_from >= _p->array.size()) {
|
||||
// Limit to array boundaries.
|
||||
p_from = _p->array.size() - 1;
|
||||
}
|
||||
|
||||
const Variant *argptrs[1];
|
||||
|
||||
for (int i = p_from; i >= 0; i--) {
|
||||
const Variant &val = _p->array[i];
|
||||
argptrs[0] = &val;
|
||||
Variant res;
|
||||
Callable::CallError ce;
|
||||
p_callable.callp(argptrs, 1, res, ce);
|
||||
if (unlikely(ce.error != Callable::CallError::CALL_OK)) {
|
||||
ERR_FAIL_V_MSG(-1, vformat("Error calling method from 'rfind_custom': %s.", Variant::get_callable_error_text(p_callable, argptrs, 1, ce)));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND_V_MSG(res.get_type() != Variant::Type::BOOL, -1, "Error on method from 'rfind_custom': Return type of callable must be boolean.");
|
||||
if (res.operator bool()) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
int Array::count(const Variant &p_value) const {
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND_V(!_p->typed.validate(value, "count"), 0);
|
||||
if (_p->array.is_empty()) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int amount = 0;
|
||||
for (int i = 0; i < _p->array.size(); i++) {
|
||||
if (StringLikeVariantComparator::compare(_p->array[i], value)) {
|
||||
amount++;
|
||||
}
|
||||
}
|
||||
|
||||
return amount;
|
||||
}
|
||||
|
||||
bool Array::has(const Variant &p_value) const {
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND_V(!_p->typed.validate(value, "use 'has'"), false);
|
||||
|
||||
return find(value) != -1;
|
||||
}
|
||||
|
||||
void Array::remove_at(int p_pos) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
|
||||
if (p_pos < 0) {
|
||||
// Relative offset from the end.
|
||||
p_pos = _p->array.size() + p_pos;
|
||||
}
|
||||
|
||||
ERR_FAIL_INDEX_MSG(p_pos, _p->array.size(), vformat("The calculated index %d is out of bounds (the array has %d elements). Leaving the array untouched.", p_pos, _p->array.size()));
|
||||
|
||||
_p->array.remove_at(p_pos);
|
||||
}
|
||||
|
||||
void Array::set(int p_idx, const Variant &p_value) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND(!_p->typed.validate(value, "set"));
|
||||
|
||||
_p->array.write[p_idx] = std::move(value);
|
||||
}
|
||||
|
||||
const Variant &Array::get(int p_idx) const {
|
||||
return operator[](p_idx);
|
||||
}
|
||||
|
||||
Array Array::duplicate(bool p_deep) const {
|
||||
return recursive_duplicate(p_deep, RESOURCE_DEEP_DUPLICATE_NONE, 0);
|
||||
}
|
||||
|
||||
Array Array::duplicate_deep(ResourceDeepDuplicateMode p_deep_subresources_mode) const {
|
||||
return recursive_duplicate(true, p_deep_subresources_mode, 0);
|
||||
}
|
||||
|
||||
Array Array::recursive_duplicate(bool p_deep, ResourceDeepDuplicateMode p_deep_subresources_mode, int recursion_count) const {
|
||||
Array new_arr;
|
||||
new_arr._p->typed = _p->typed;
|
||||
|
||||
if (recursion_count > MAX_RECURSION) {
|
||||
ERR_PRINT("Max recursion reached");
|
||||
return new_arr;
|
||||
}
|
||||
|
||||
if (p_deep) {
|
||||
bool is_call_chain_end = recursion_count == 0;
|
||||
|
||||
recursion_count++;
|
||||
int element_count = size();
|
||||
new_arr.resize(element_count);
|
||||
Variant *write = new_arr._p->array.ptrw();
|
||||
for (int i = 0; i < element_count; i++) {
|
||||
write[i] = get(i).recursive_duplicate(true, p_deep_subresources_mode, recursion_count);
|
||||
}
|
||||
|
||||
// Variant::recursive_duplicate() may have created a remap cache by now.
|
||||
if (is_call_chain_end) {
|
||||
Resource::_teardown_duplicate_from_variant();
|
||||
}
|
||||
} else {
|
||||
new_arr._p->array = _p->array;
|
||||
}
|
||||
|
||||
return new_arr;
|
||||
}
|
||||
|
||||
Array Array::slice(int p_begin, int p_end, int p_step, bool p_deep) const {
|
||||
Array result;
|
||||
result._p->typed = _p->typed;
|
||||
|
||||
ERR_FAIL_COND_V_MSG(p_step == 0, result, "Slice step cannot be zero.");
|
||||
|
||||
const int s = size();
|
||||
|
||||
if (s == 0 || (p_begin < -s && p_step < 0) || (p_begin >= s && p_step > 0)) {
|
||||
return result;
|
||||
}
|
||||
|
||||
int begin = CLAMP(p_begin, -s, s - 1);
|
||||
if (begin < 0) {
|
||||
begin += s;
|
||||
}
|
||||
int end = CLAMP(p_end, -s - 1, s);
|
||||
if (end < 0) {
|
||||
end += s;
|
||||
}
|
||||
|
||||
ERR_FAIL_COND_V_MSG(p_step > 0 && begin > end, result, "Slice step is positive, but bounds are decreasing.");
|
||||
ERR_FAIL_COND_V_MSG(p_step < 0 && begin < end, result, "Slice step is negative, but bounds are increasing.");
|
||||
|
||||
int result_size = (end - begin) / p_step + (((end - begin) % p_step != 0) ? 1 : 0);
|
||||
result.resize(result_size);
|
||||
|
||||
Variant *write = result._p->array.ptrw();
|
||||
for (int src_idx = begin, dest_idx = 0; dest_idx < result_size; ++dest_idx) {
|
||||
write[dest_idx] = p_deep ? get(src_idx).duplicate(true) : get(src_idx);
|
||||
src_idx += p_step;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
Array Array::filter(const Callable &p_callable) const {
|
||||
Array new_arr;
|
||||
new_arr.resize(size());
|
||||
new_arr._p->typed = _p->typed;
|
||||
int accepted_count = 0;
|
||||
|
||||
const Variant *argptrs[1];
|
||||
Variant *write = new_arr._p->array.ptrw();
|
||||
for (int i = 0; i < size(); i++) {
|
||||
argptrs[0] = &get(i);
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.callp(argptrs, 1, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(Array(), vformat("Error calling method from 'filter': %s.", Variant::get_callable_error_text(p_callable, argptrs, 1, ce)));
|
||||
}
|
||||
|
||||
if (result.operator bool()) {
|
||||
write[accepted_count] = get(i);
|
||||
accepted_count++;
|
||||
}
|
||||
}
|
||||
|
||||
new_arr.resize(accepted_count);
|
||||
|
||||
return new_arr;
|
||||
}
|
||||
|
||||
Array Array::map(const Callable &p_callable) const {
|
||||
Array new_arr;
|
||||
new_arr.resize(size());
|
||||
|
||||
const Variant *argptrs[1];
|
||||
Variant *write = new_arr._p->array.ptrw();
|
||||
for (int i = 0; i < size(); i++) {
|
||||
argptrs[0] = &get(i);
|
||||
|
||||
Callable::CallError ce;
|
||||
p_callable.callp(argptrs, 1, write[i], ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(Array(), vformat("Error calling method from 'map': %s.", Variant::get_callable_error_text(p_callable, argptrs, 1, ce)));
|
||||
}
|
||||
}
|
||||
|
||||
return new_arr;
|
||||
}
|
||||
|
||||
Variant Array::reduce(const Callable &p_callable, const Variant &p_accum) const {
|
||||
int start = 0;
|
||||
Variant ret = p_accum;
|
||||
if (ret == Variant() && size() > 0) {
|
||||
ret = front();
|
||||
start = 1;
|
||||
}
|
||||
|
||||
const Variant *argptrs[2];
|
||||
for (int i = start; i < size(); i++) {
|
||||
argptrs[0] = &ret;
|
||||
argptrs[1] = &get(i);
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.callp(argptrs, 2, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(Variant(), vformat("Error calling method from 'reduce': %s.", Variant::get_callable_error_text(p_callable, argptrs, 2, ce)));
|
||||
}
|
||||
ret = result;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
bool Array::any(const Callable &p_callable) const {
|
||||
const Variant *argptrs[1];
|
||||
for (int i = 0; i < size(); i++) {
|
||||
argptrs[0] = &get(i);
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.callp(argptrs, 1, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(false, vformat("Error calling method from 'any': %s.", Variant::get_callable_error_text(p_callable, argptrs, 1, ce)));
|
||||
}
|
||||
|
||||
if (result.operator bool()) {
|
||||
// Return as early as possible when one of the conditions is `true`.
|
||||
// This improves performance compared to relying on `filter(...).size() >= 1`.
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool Array::all(const Callable &p_callable) const {
|
||||
const Variant *argptrs[1];
|
||||
for (int i = 0; i < size(); i++) {
|
||||
argptrs[0] = &get(i);
|
||||
|
||||
Variant result;
|
||||
Callable::CallError ce;
|
||||
p_callable.callp(argptrs, 1, result, ce);
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
ERR_FAIL_V_MSG(false, vformat("Error calling method from 'all': %s.", Variant::get_callable_error_text(p_callable, argptrs, 1, ce)));
|
||||
}
|
||||
|
||||
if (!(result.operator bool())) {
|
||||
// Return as early as possible when one of the inverted conditions is `false`.
|
||||
// This improves performance compared to relying on `filter(...).size() >= array_size().`.
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
struct _ArrayVariantSort {
|
||||
_FORCE_INLINE_ bool operator()(const Variant &p_l, const Variant &p_r) const {
|
||||
bool valid = false;
|
||||
Variant res;
|
||||
Variant::evaluate(Variant::OP_LESS, p_l, p_r, res, valid);
|
||||
if (!valid) {
|
||||
res = false;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
};
|
||||
|
||||
void Array::sort() {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
_p->array.sort_custom<_ArrayVariantSort>();
|
||||
}
|
||||
|
||||
void Array::sort_custom(const Callable &p_callable) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
_p->array.sort_custom<CallableComparator, true>(p_callable);
|
||||
}
|
||||
|
||||
void Array::shuffle() {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
const int n = _p->array.size();
|
||||
if (n < 2) {
|
||||
return;
|
||||
}
|
||||
Variant *data = _p->array.ptrw();
|
||||
for (int i = n - 1; i >= 1; i--) {
|
||||
const int j = Math::rand() % (i + 1);
|
||||
SWAP(data[i], data[j]);
|
||||
}
|
||||
}
|
||||
|
||||
int Array::bsearch(const Variant &p_value, bool p_before) const {
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND_V(!_p->typed.validate(value, "binary search"), -1);
|
||||
return _p->array.span().bisect<_ArrayVariantSort>(value, p_before);
|
||||
}
|
||||
|
||||
int Array::bsearch_custom(const Variant &p_value, const Callable &p_callable, bool p_before) const {
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND_V(!_p->typed.validate(value, "custom binary search"), -1);
|
||||
|
||||
return _p->array.bsearch_custom<CallableComparator>(value, p_before, p_callable);
|
||||
}
|
||||
|
||||
void Array::reverse() {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
_p->array.reverse();
|
||||
}
|
||||
|
||||
void Array::push_front(const Variant &p_value) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
Variant value = p_value;
|
||||
ERR_FAIL_COND(!_p->typed.validate(value, "push_front"));
|
||||
_p->array.insert(0, std::move(value));
|
||||
}
|
||||
|
||||
Variant Array::pop_back() {
|
||||
ERR_FAIL_COND_V_MSG(_p->read_only, Variant(), "Array is in read-only state.");
|
||||
if (!_p->array.is_empty()) {
|
||||
const int n = _p->array.size() - 1;
|
||||
const Variant ret = _p->array.get(n);
|
||||
_p->array.resize(n);
|
||||
return ret;
|
||||
}
|
||||
return Variant();
|
||||
}
|
||||
|
||||
Variant Array::pop_front() {
|
||||
ERR_FAIL_COND_V_MSG(_p->read_only, Variant(), "Array is in read-only state.");
|
||||
if (!_p->array.is_empty()) {
|
||||
const Variant ret = _p->array.get(0);
|
||||
_p->array.remove_at(0);
|
||||
return ret;
|
||||
}
|
||||
return Variant();
|
||||
}
|
||||
|
||||
Variant Array::pop_at(int p_pos) {
|
||||
ERR_FAIL_COND_V_MSG(_p->read_only, Variant(), "Array is in read-only state.");
|
||||
if (_p->array.is_empty()) {
|
||||
// Return `null` without printing an error to mimic `pop_back()` and `pop_front()` behavior.
|
||||
return Variant();
|
||||
}
|
||||
|
||||
if (p_pos < 0) {
|
||||
// Relative offset from the end
|
||||
p_pos = _p->array.size() + p_pos;
|
||||
}
|
||||
|
||||
ERR_FAIL_INDEX_V_MSG(
|
||||
p_pos,
|
||||
_p->array.size(),
|
||||
Variant(),
|
||||
vformat(
|
||||
"The calculated index %s is out of bounds (the array has %s elements). Leaving the array untouched and returning `null`.",
|
||||
p_pos,
|
||||
_p->array.size()));
|
||||
|
||||
const Variant ret = _p->array.get(p_pos);
|
||||
_p->array.remove_at(p_pos);
|
||||
return ret;
|
||||
}
|
||||
|
||||
Variant Array::min() const {
|
||||
int array_size = size();
|
||||
if (array_size == 0) {
|
||||
return Variant();
|
||||
}
|
||||
|
||||
int min_index = 0;
|
||||
Variant is_less;
|
||||
for (int i = 1; i < array_size; i++) {
|
||||
bool valid;
|
||||
Variant::evaluate(Variant::OP_LESS, _p->array[i], _p->array[min_index], is_less, valid);
|
||||
if (!valid) {
|
||||
return Variant(); //not a valid comparison
|
||||
}
|
||||
if (bool(is_less)) {
|
||||
min_index = i;
|
||||
}
|
||||
}
|
||||
return _p->array[min_index];
|
||||
}
|
||||
|
||||
Variant Array::max() const {
|
||||
int array_size = size();
|
||||
if (array_size == 0) {
|
||||
return Variant();
|
||||
}
|
||||
|
||||
int max_index = 0;
|
||||
Variant is_greater;
|
||||
for (int i = 1; i < array_size; i++) {
|
||||
bool valid;
|
||||
Variant::evaluate(Variant::OP_GREATER, _p->array[i], _p->array[max_index], is_greater, valid);
|
||||
if (!valid) {
|
||||
return Variant(); //not a valid comparison
|
||||
}
|
||||
if (bool(is_greater)) {
|
||||
max_index = i;
|
||||
}
|
||||
}
|
||||
return _p->array[max_index];
|
||||
}
|
||||
|
||||
const void *Array::id() const {
|
||||
return _p;
|
||||
}
|
||||
|
||||
Array::Array(const Array &p_from, uint32_t p_type, const StringName &p_class_name, const Variant &p_script) {
|
||||
_p = memnew(ArrayPrivate);
|
||||
_p->refcount.init();
|
||||
set_typed(p_type, p_class_name, p_script);
|
||||
assign(p_from);
|
||||
}
|
||||
|
||||
void Array::set_typed(const ContainerType &p_element_type) {
|
||||
set_typed(p_element_type.builtin_type, p_element_type.class_name, p_element_type.script);
|
||||
}
|
||||
|
||||
void Array::set_typed(uint32_t p_type, const StringName &p_class_name, const Variant &p_script) {
|
||||
ERR_FAIL_COND_MSG(_p->read_only, "Array is in read-only state.");
|
||||
ERR_FAIL_COND_MSG(_p->array.size() > 0, "Type can only be set when array is empty.");
|
||||
ERR_FAIL_COND_MSG(_p->refcount.get() > 1, "Type can only be set when array has no more than one user.");
|
||||
ERR_FAIL_COND_MSG(_p->typed.type != Variant::NIL, "Type can only be set once.");
|
||||
ERR_FAIL_COND_MSG(p_class_name != StringName() && p_type != Variant::OBJECT, "Class names can only be set for type OBJECT");
|
||||
Ref<Script> script = p_script;
|
||||
ERR_FAIL_COND_MSG(script.is_valid() && p_class_name == StringName(), "Script class can only be set together with base class name");
|
||||
|
||||
_p->typed.type = Variant::Type(p_type);
|
||||
_p->typed.class_name = p_class_name;
|
||||
_p->typed.script = script;
|
||||
_p->typed.where = "TypedArray";
|
||||
}
|
||||
|
||||
bool Array::is_typed() const {
|
||||
return _p->typed.type != Variant::NIL;
|
||||
}
|
||||
|
||||
bool Array::is_same_typed(const Array &p_other) const {
|
||||
return _p->typed == p_other._p->typed;
|
||||
}
|
||||
|
||||
bool Array::is_same_instance(const Array &p_other) const {
|
||||
return _p == p_other._p;
|
||||
}
|
||||
|
||||
ContainerType Array::get_element_type() const {
|
||||
ContainerType type;
|
||||
type.builtin_type = _p->typed.type;
|
||||
type.class_name = _p->typed.class_name;
|
||||
type.script = _p->typed.script;
|
||||
return type;
|
||||
}
|
||||
|
||||
uint32_t Array::get_typed_builtin() const {
|
||||
return _p->typed.type;
|
||||
}
|
||||
|
||||
StringName Array::get_typed_class_name() const {
|
||||
return _p->typed.class_name;
|
||||
}
|
||||
|
||||
Variant Array::get_typed_script() const {
|
||||
return _p->typed.script;
|
||||
}
|
||||
|
||||
Array Array::create_read_only() {
|
||||
Array array;
|
||||
array.make_read_only();
|
||||
return array;
|
||||
}
|
||||
|
||||
void Array::make_read_only() {
|
||||
if (_p->read_only == nullptr) {
|
||||
_p->read_only = memnew(Variant);
|
||||
}
|
||||
}
|
||||
|
||||
bool Array::is_read_only() const {
|
||||
return _p->read_only != nullptr;
|
||||
}
|
||||
|
||||
Span<Variant> Array::span() const {
|
||||
return _p->array.span();
|
||||
}
|
||||
|
||||
Array::Array(const Array &p_from) {
|
||||
_p = nullptr;
|
||||
_ref(p_from);
|
||||
}
|
||||
|
||||
Array::Array(std::initializer_list<Variant> p_init) {
|
||||
_p = memnew(ArrayPrivate);
|
||||
_p->refcount.init();
|
||||
_p->array = Vector<Variant>(p_init);
|
||||
}
|
||||
|
||||
Array::Array() {
|
||||
_p = memnew(ArrayPrivate);
|
||||
_p->refcount.init();
|
||||
}
|
||||
|
||||
Array::~Array() {
|
||||
_unref();
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"url": "https://raw.githubusercontent.com/godotengine/godot/ed1daf0bf/core/object/ref_counted.h",
|
||||
"engine_revision": "ed1daf0bf",
|
||||
"bytes": 7628,
|
||||
"sha256": "05ef9e22f969dd4e93d5682e898b86e0ed646bf6d21a0225de9c7d68193bf074",
|
||||
"scope": "Primary absent Ref conversion source; no engine execution"
|
||||
}
|
||||
+262
@@ -0,0 +1,262 @@
|
||||
/**************************************************************************/
|
||||
/* ref_counted.h */
|
||||
/**************************************************************************/
|
||||
/* This file is part of: */
|
||||
/* GODOT ENGINE */
|
||||
/* https://godotengine.org */
|
||||
/**************************************************************************/
|
||||
/* Copyright (c) 2014-present Godot Engine contributors (see AUTHORS.md). */
|
||||
/* Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur. */
|
||||
/* */
|
||||
/* Permission is hereby granted, free of charge, to any person obtaining */
|
||||
/* a copy of this software and associated documentation files (the */
|
||||
/* "Software"), to deal in the Software without restriction, including */
|
||||
/* without limitation the rights to use, copy, modify, merge, publish, */
|
||||
/* distribute, sublicense, and/or sell copies of the Software, and to */
|
||||
/* permit persons to whom the Software is furnished to do so, subject to */
|
||||
/* the following conditions: */
|
||||
/* */
|
||||
/* The above copyright notice and this permission notice shall be */
|
||||
/* included in all copies or substantial portions of the Software. */
|
||||
/* */
|
||||
/* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, */
|
||||
/* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF */
|
||||
/* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. */
|
||||
/* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY */
|
||||
/* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, */
|
||||
/* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE */
|
||||
/* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
|
||||
/**************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "core/object/object.h"
|
||||
#include "core/templates/safe_refcount.h"
|
||||
|
||||
class RefCounted : public Object {
|
||||
GDCLASS(RefCounted, Object);
|
||||
SafeRefCount refcount;
|
||||
SafeRefCount refcount_init;
|
||||
SafeNumeric<uint32_t> dereference_count;
|
||||
|
||||
protected:
|
||||
static void _bind_methods();
|
||||
|
||||
public:
|
||||
static constexpr AncestralClass static_ancestral_class = AncestralClass::REF_COUNTED;
|
||||
|
||||
_FORCE_INLINE_ bool is_referenced() const { return refcount_init.get() != 1; }
|
||||
bool init_ref();
|
||||
void deinit_ref(); // Effectively decrements refcount by increasing refcount_init by one.
|
||||
bool reference(); // returns false if refcount is at zero and didn't get increased
|
||||
bool unreference();
|
||||
int get_reference_count() const;
|
||||
|
||||
RefCounted();
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
class Ref {
|
||||
T *reference = nullptr;
|
||||
|
||||
_FORCE_INLINE_ void ref(const Ref &p_from) {
|
||||
ref_pointer<false>(p_from.reference);
|
||||
}
|
||||
|
||||
template <bool Init>
|
||||
_FORCE_INLINE_ void ref_pointer(T *p_refcounted) {
|
||||
if (p_refcounted == reference) {
|
||||
return;
|
||||
}
|
||||
|
||||
// This will go out of scope and get unref'd.
|
||||
Ref cleanup_ref;
|
||||
cleanup_ref.reference = reference;
|
||||
reference = p_refcounted;
|
||||
if (reference) {
|
||||
if constexpr (Init) {
|
||||
if (!reference->init_ref()) {
|
||||
reference = nullptr;
|
||||
}
|
||||
} else {
|
||||
if (!reference->reference()) {
|
||||
reference = nullptr;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//virtual RefCounted * get_reference() const { return reference; }
|
||||
public:
|
||||
static _FORCE_INLINE_ String get_class_static() {
|
||||
return T::get_class_static();
|
||||
}
|
||||
|
||||
_FORCE_INLINE_ bool operator==(const T *p_ptr) const {
|
||||
return reference == p_ptr;
|
||||
}
|
||||
_FORCE_INLINE_ bool operator!=(const T *p_ptr) const {
|
||||
return reference != p_ptr;
|
||||
}
|
||||
#ifdef STRICT_CHECKS
|
||||
// Delete these to prevent raw comparisons with `nullptr`.
|
||||
bool operator==(std::nullptr_t) const = delete;
|
||||
bool operator!=(std::nullptr_t) const = delete;
|
||||
#endif // STRICT_CHECKS
|
||||
|
||||
_FORCE_INLINE_ bool operator<(const Ref<T> &p_r) const {
|
||||
return reference < p_r.reference;
|
||||
}
|
||||
_FORCE_INLINE_ bool operator==(const Ref<T> &p_r) const {
|
||||
return reference == p_r.reference;
|
||||
}
|
||||
_FORCE_INLINE_ bool operator!=(const Ref<T> &p_r) const {
|
||||
return reference != p_r.reference;
|
||||
}
|
||||
|
||||
_FORCE_INLINE_ T *operator*() const {
|
||||
return reference;
|
||||
}
|
||||
|
||||
_FORCE_INLINE_ T *operator->() const {
|
||||
return reference;
|
||||
}
|
||||
|
||||
_FORCE_INLINE_ T *ptr() const {
|
||||
return reference;
|
||||
}
|
||||
|
||||
operator Variant() const {
|
||||
return Variant(reference);
|
||||
}
|
||||
|
||||
void operator=(const Ref &p_from) {
|
||||
ref(p_from);
|
||||
}
|
||||
|
||||
void operator=(Ref &&p_from) {
|
||||
if (reference == p_from.reference) {
|
||||
return;
|
||||
}
|
||||
unref();
|
||||
reference = p_from.reference;
|
||||
p_from.reference = nullptr;
|
||||
}
|
||||
|
||||
template <typename T_Other>
|
||||
void operator=(const Ref<T_Other> &p_from) {
|
||||
ref_pointer<false>(Object::cast_to<T>(p_from.ptr()));
|
||||
}
|
||||
|
||||
void operator=(T *p_from) {
|
||||
ref_pointer<true>(p_from);
|
||||
}
|
||||
|
||||
void operator=(const Variant &p_variant) {
|
||||
Object *object = p_variant.get_validated_object();
|
||||
|
||||
if (object == reference) {
|
||||
return;
|
||||
}
|
||||
|
||||
ref_pointer<false>(Object::cast_to<T>(object));
|
||||
}
|
||||
|
||||
template <typename T_Other>
|
||||
void reference_ptr(T_Other *p_ptr) {
|
||||
if (reference == p_ptr) {
|
||||
return;
|
||||
}
|
||||
|
||||
ref_pointer<true>(Object::cast_to<T>(p_ptr));
|
||||
}
|
||||
|
||||
Ref(const Ref &p_from) {
|
||||
this->operator=(p_from);
|
||||
}
|
||||
|
||||
Ref(Ref &&p_from) {
|
||||
reference = p_from.reference;
|
||||
p_from.reference = nullptr;
|
||||
}
|
||||
|
||||
template <typename T_Other>
|
||||
Ref(const Ref<T_Other> &p_from) {
|
||||
this->operator=(p_from);
|
||||
}
|
||||
|
||||
Ref(T *p_from) {
|
||||
this->operator=(p_from);
|
||||
}
|
||||
|
||||
Ref(const Variant &p_from) {
|
||||
this->operator=(p_from);
|
||||
}
|
||||
|
||||
inline bool is_valid() const { return reference != nullptr; }
|
||||
inline bool is_null() const { return reference == nullptr; }
|
||||
|
||||
void unref() {
|
||||
// TODO: this should be moved to mutexes, since this engine does not really
|
||||
// do a lot of referencing on references and stuff
|
||||
// mutexes will avoid more crashes?
|
||||
|
||||
if (reference) {
|
||||
// NOTE: `reinterpret_cast` is "safe" here because we know `T` has simple linear
|
||||
// inheritance to `RefCounted`. This guarantees that `T * == `RefCounted *`, which
|
||||
// allows us to declare `Ref<T>` with forward declared `T` types.
|
||||
if (reinterpret_cast<RefCounted *>(reference)->unreference()) {
|
||||
memdelete(reinterpret_cast<RefCounted *>(reference));
|
||||
}
|
||||
reference = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
template <typename... VarArgs>
|
||||
void instantiate(VarArgs... p_params) {
|
||||
Ref<T> ref = memnew(T(p_params...));
|
||||
// Appropriate the new Ref, and if the previous one was set, free it.
|
||||
SWAP(reference, ref.reference);
|
||||
}
|
||||
|
||||
uint32_t hash() const { return HashMapHasherDefault::hash(reference); }
|
||||
|
||||
Ref() = default;
|
||||
|
||||
~Ref() {
|
||||
unref();
|
||||
}
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
struct memnew_result<T, std::enable_if_t<std::is_base_of_v<RefCounted, T>>> {
|
||||
using class_name = Ref<T>;
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
void postinitialize_handler(Ref<T> &p_object) {
|
||||
postinitialize_handler(p_object.ptr());
|
||||
}
|
||||
|
||||
class WeakRef : public RefCounted {
|
||||
GDCLASS(WeakRef, RefCounted);
|
||||
|
||||
ObjectID ref;
|
||||
|
||||
protected:
|
||||
static void _bind_methods();
|
||||
|
||||
public:
|
||||
Variant get_ref() const;
|
||||
void set_obj(Object *p_object);
|
||||
void set_ref(const Ref<RefCounted> &p_ref);
|
||||
};
|
||||
|
||||
// Zero-constructing Ref initializes reference to nullptr (and thus empty).
|
||||
template <typename T>
|
||||
struct is_zero_constructible<Ref<T>> : std::true_type {};
|
||||
|
||||
template <typename T>
|
||||
Ref<T> ObjectDB::get_ref(ObjectID p_instance_id) {
|
||||
return Ref<T>(get_instance(p_instance_id));
|
||||
}
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
{
|
||||
"url": "https://raw.githubusercontent.com/godotengine/godot/ed1daf0bf/core/variant/array.cpp",
|
||||
"engine_revision": "ed1daf0bf",
|
||||
"bytes": 27906,
|
||||
"sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b",
|
||||
"scope": "Primary source only; no new engine execution"
|
||||
}
|
||||
+474
@@ -0,0 +1,474 @@
|
||||
{
|
||||
"review_id": "p23-02-native-integer-window-codec-build-actual-independent-review-r291",
|
||||
"reviewed_at": "2026-10-11T23:04:02.174816+00:00",
|
||||
"host_build_accepted": true,
|
||||
"blockers": [],
|
||||
"evidence_sha256": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275.py",
|
||||
"bytes": 16495,
|
||||
"sha256": "3f3c7118f9ad880a9f8ea0ed7f98940bd8a18a2edacf354fb9028ffba03f16de"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-preview-r275.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-preview-r275.json",
|
||||
"bytes": 3379,
|
||||
"sha256": "43d7ddf26df4b28e48699bae16de16442946890c3e302cd15e94a9e3cd84b8e8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/input.json",
|
||||
"bytes": 900666,
|
||||
"sha256": "d2381f455e44d8355f54de0c52ed08d6ffbadbd68836848a87e96073c41e80e9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/sdk/bin/libgodot-cpp.macos.template_debug.arm64.a": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/sdk/bin/libgodot-cpp.macos.template_debug.arm64.a",
|
||||
"bytes": 2251696,
|
||||
"sha256": "f429c29496622a7bfd460ebf249bb3930a515ca4fedd7efc6d347acab8015c35"
|
||||
},
|
||||
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++": {
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++",
|
||||
"bytes": 141373024,
|
||||
"sha256": "7def90dd8829726686213a747fc5bff1583df933dae5edc55d755479e0bfe00a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/compile_commands.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/compile_commands.json",
|
||||
"bytes": 46759,
|
||||
"sha256": "43cbba9c13c03bc8539efac1eaaf4da9b5d3d6a9af3875d8cc3a3994e1a59745"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-actual-independent-review-r133.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-actual-independent-review-r133.json",
|
||||
"bytes": 199445,
|
||||
"sha256": "c3cbeb45c1353dfea5f8181d10cc60f8a9b81db55d766ac5db902ac28c159a61"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-r133/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-r133/input.json",
|
||||
"bytes": 838584,
|
||||
"sha256": "bf6dafe0a55c9ffb0310ef5ede6471aac93f9dee4f4fe6ad84e20e998202514e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-r133/libgodot-cpp.macos.template_debug.arm64.a": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-r133/libgodot-cpp.macos.template_debug.arm64.a",
|
||||
"bytes": 2284912,
|
||||
"sha256": "4d54f0980c3f445f3013cddb859135b619f28a91205fc8b9fbc9d10bc76c52c3"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76.py",
|
||||
"bytes": 14637,
|
||||
"sha256": "e8cfbc4cea630e0cb245d825ac5daf9730e309c4895bcbc949a744f41a2d760a"
|
||||
},
|
||||
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/SDKSettings.json": {
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/SDKSettings.json",
|
||||
"bytes": 7774,
|
||||
"sha256": "f8d005f09381389167f9e0aeaa169bc9e7dff162ef22ca2fd8e98df7ff1acafe"
|
||||
},
|
||||
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/SDKSettings.plist": {
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/SDKSettings.plist",
|
||||
"bytes": 5388,
|
||||
"sha256": "e5c7c40b8c5dc1a9f99f8b9fa51870f8fe180421225b8201d0c4c826aad11bdc"
|
||||
},
|
||||
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/cstddef": {
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/cstddef",
|
||||
"bytes": 1607,
|
||||
"sha256": "53c4fc868f6439e48e52bbc9445a48eab1e597bbfad037ab7480216cb0c6832f"
|
||||
},
|
||||
"/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libc++.tbd": {
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libc++.tbd",
|
||||
"bytes": 155867,
|
||||
"sha256": "5539059b5e609a9518358e42234cc9a439ae0f54e5e8ca136686a8c9ebc35c1a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-preexecution-independent-review-r275.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-preexecution-independent-review-r275.json",
|
||||
"bytes": 21406,
|
||||
"sha256": "38639f46a7dedb6926351ba5ded85cb0740ff4988e7ecff0360817696257b76a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-actual-independent-review-r275.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-actual-independent-review-r275.json",
|
||||
"bytes": 21552,
|
||||
"sha256": "54576596f82b8aceca440c1a5514ce811125e977c64c210675feecbb3901929f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286.py",
|
||||
"bytes": 16592,
|
||||
"sha256": "14bdaa2dcfab62f594fcb95a9ead5bc6defbc35e727fbb0de46a7494af780e3a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preview-r286.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preview-r286.json",
|
||||
"bytes": 3402,
|
||||
"sha256": "cba922a40684eaf3206c17ac8eaa588b04015a9f09d0dbc5f79a16bf7f4159b2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json",
|
||||
"bytes": 10950,
|
||||
"sha256": "bffbdcb491ba0aa68eeac764228c04418d2ef3834624cb1fcb98db773e8369fd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r285-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r285-r02.json",
|
||||
"bytes": 4849,
|
||||
"sha256": "27b0b957737d79a3047f2b2a8fa936ac0ec368414d61bb6f097a524a3fd27ead"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_numeric_core.cpp",
|
||||
"bytes": 54002,
|
||||
"sha256": "ce20a90adb8a410dc1b6cbf607b7bfa8bf21eaef158c5c6bfc7a9bbcc703d2b2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_core.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp",
|
||||
"bytes": 59396,
|
||||
"sha256": "75bc2f659f62889fccac5990461f5b51e8b87f30ca0791e4a4c542d37a7c5236"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-r285-r02.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-r285-r02.py",
|
||||
"bytes": 8607,
|
||||
"sha256": "7316b5b10bc65f7e286b66940767175f1f6b07182b84c8c2b326907bc668f9b5"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/marshalls.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/marshalls.cpp",
|
||||
"bytes": 55439,
|
||||
"sha256": "183c43e46d3e4b73c0fb1fc8018da37faeb88c7414dd928b1fb6ff4f4a91a374"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/source.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/source.json",
|
||||
"bytes": 585,
|
||||
"sha256": "cbdfe256f152bc8f0c44b849848a94e3eec1e84d6a55f5da69188a6430a148a9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json",
|
||||
"bytes": 14529,
|
||||
"sha256": "40b90fe5086d1bb468f14418657b946fac11615b46cdf66de5f0ccac832a8457"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/input.json",
|
||||
"bytes": 4325,
|
||||
"sha256": "38fb6adc0ec74c0f37631da3f1ddecf185879be9655574a920f1c12566beaa8f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285.json",
|
||||
"bytes": 9547,
|
||||
"sha256": "c3f3525ee6b172bcbbc79838d49beac137d2dbd86deb61cdbefc1a921e743f06"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285/source/tree_numeric_core.cpp",
|
||||
"bytes": 59281,
|
||||
"sha256": "2edd9d6d782cd4072272f0c24b50ce74691899c5a4bbc9ccc946a991217d814a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-null-script-r290.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-null-script-r290.py",
|
||||
"bytes": 2842,
|
||||
"sha256": "3225e506a35abc46acb5a7e38a7d80bdce22f3ad31e7a87d3c347bf15c4d0d6c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json",
|
||||
"bytes": 10858,
|
||||
"sha256": "22e07864c1f7453c3eb38cb81e5bb189e48c9cbe2f31c507b75ce3c51c8174f5"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp",
|
||||
"bytes": 27906,
|
||||
"sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json",
|
||||
"bytes": 291,
|
||||
"sha256": "cd89af6dd2258fe71036edf9f92ce6302d823b68c257405e2a56795726e87834"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref_counted.h": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref_counted.h",
|
||||
"bytes": 7628,
|
||||
"sha256": "05ef9e22f969dd4e93d5682e898b86e0ed646bf6d21a0225de9c7d68193bf074"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref-source.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref-source.json",
|
||||
"bytes": 306,
|
||||
"sha256": "633234e67598321413393912f4b52a51b191df5b4adc944d402b10ddd5cc27eb"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/typed_array.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/typed_array.hpp",
|
||||
"bytes": 6553,
|
||||
"sha256": "e501619ecd1489869c119c87b6738d6999f9b328bba86b5577023257acce5bbe"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/variant.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/variant.hpp",
|
||||
"bytes": 12723,
|
||||
"sha256": "323e24a2ef20c5e9a9ab13fb432e8c2aaceeef6907e6c51c80883642354228e3"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-independent-review-r286.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-independent-review-r286.json",
|
||||
"bytes": 19698,
|
||||
"sha256": "f3fab769c0baeacbec945e745debaf16c78dfed134bffa33af4683d1779ec72f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r286.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r286.json",
|
||||
"bytes": 29934,
|
||||
"sha256": "939152f95590c753f016645ba09241977dd936a7dbb2d488ad923b0ed89ba5e6"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286/input.json",
|
||||
"bytes": 658422,
|
||||
"sha256": "2c952b769af027498eab00ca3c745f1eb1179de20b05579f2e2e76bdce35cb2c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291.py",
|
||||
"bytes": 16568,
|
||||
"sha256": "942b658bc35d67e52a01582a2570632f43824b857799894e814fb7f9b8d4672e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preview-r291.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preview-r291.json",
|
||||
"bytes": 3067,
|
||||
"sha256": "ad7123a66da548eb58cf065a3c3f355c91bcc6d2bbabeeba8d874fd2cef27d76"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-validation-independent-review-r77.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-validation-independent-review-r77.json",
|
||||
"bytes": 16092,
|
||||
"sha256": "75d3bbff767fb88af266c4b1b9da37d96294ab72b9e07fcac9a3e7e567a29d49"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-validation-r77/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-validation-r77/execution.json",
|
||||
"bytes": 62521,
|
||||
"sha256": "58eb89af57b5d445058adfacff053171765433570a5d406d324a476ede7695f1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-independent-review-r291.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-independent-review-r291.json",
|
||||
"bytes": 29209,
|
||||
"sha256": "fd2a132e043d6d113da2c64d85741f49a3445936de421dc90b775e8d69619968"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-root-verification-r291.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-root-verification-r291.json",
|
||||
"bytes": 17074,
|
||||
"sha256": "9d722a2fb1c0f281952ab49b7c0843626911d11b0d172aba2f747a9959ad8c47"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/input.json",
|
||||
"bytes": 658374,
|
||||
"sha256": "8db93847bc665f2124b2c9d2ac09b056c3095bcb6379d609a73980a84b243364"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link-phase.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link-phase.json",
|
||||
"bytes": 615,
|
||||
"sha256": "616d40875da101157c8f8d1b543c6dfe8820b850b9aeb3355b08867bd5a86b48"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062-phase.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062-phase.json",
|
||||
"bytes": 614,
|
||||
"sha256": "548fbffb24399d0b005458845a8d4b3416d9666b2f353bdbdc5c898a4763974d"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/execution.json",
|
||||
"bytes": 7210,
|
||||
"sha256": "ecacdcf050b7a77ecf3b356f75bbfbd089813f4b9744fd58f4631282b5898248"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/objects/062-tree_numeric_core.os": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/objects/062-tree_numeric_core.os",
|
||||
"bytes": 278536,
|
||||
"sha256": "7d9bf00dcfd52cf71b5ef4e3f9d885436fce511c9332573006b3aeae35b4b29b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/stderr.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/ended.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/ended.json",
|
||||
"bytes": 1350,
|
||||
"sha256": "5bce7d1c3e63c816201786afaaedab2de4692cf7af915978d3e3424d566e3b7f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/stdout.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/stdout.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/started.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/started.json",
|
||||
"bytes": 2066,
|
||||
"sha256": "daf725cc75f4380b9038d3110b9588e9dca292a237e0485a83efbf4ae0eb7ad7"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/stderr.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/ended.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/ended.json",
|
||||
"bytes": 1872,
|
||||
"sha256": "983f754644cfa451a7653fa542cc06c378365fc8e8e2aea4019675bac838ef6f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/stdout.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/stdout.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/started.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/started.json",
|
||||
"bytes": 2998,
|
||||
"sha256": "5257011024296a81bf0372f9969da45b5f33b192b772a96bb2bab855b8f76f0c"
|
||||
}
|
||||
},
|
||||
"canonical_doc4_context_pins": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
},
|
||||
"phase_observations": [
|
||||
{
|
||||
"phase": "compile-062",
|
||||
"pid": 33009,
|
||||
"exit_code": 0,
|
||||
"duration_seconds": 1.619920166,
|
||||
"owned_new_session": true,
|
||||
"all_captured_ended": true,
|
||||
"strict_stdout_stderr_empty": true
|
||||
},
|
||||
{
|
||||
"phase": "link",
|
||||
"pid": 33027,
|
||||
"exit_code": 0,
|
||||
"duration_seconds": 0.22280520800000003,
|
||||
"owned_new_session": true,
|
||||
"all_captured_ended": true,
|
||||
"strict_stdout_stderr_empty": true
|
||||
}
|
||||
],
|
||||
"library": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"object": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/objects/062-tree_numeric_core.os",
|
||||
"bytes": 278536,
|
||||
"sha256": "7d9bf00dcfd52cf71b5ef4e3f9d885436fce511c9332573006b3aeae35b4b29b"
|
||||
},
|
||||
"SDK_archive_reused": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-r133/libgodot-cpp.macos.template_debug.arm64.a",
|
||||
"bytes": 2284912,
|
||||
"sha256": "4d54f0980c3f445f3013cddb859135b619f28a91205fc8b9fbc9d10bc76c52c3"
|
||||
},
|
||||
"binary_structure_verification": {
|
||||
"independent_raw_macho_parse": true,
|
||||
"architecture": "arm64",
|
||||
"filetype": "MH_DYLIB",
|
||||
"dependencies": [
|
||||
"/usr/lib/libc++.1.dylib",
|
||||
"/usr/lib/libSystem.B.dylib"
|
||||
],
|
||||
"install_name": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"export": {
|
||||
"name": "_tree_numeric_core_init",
|
||||
"type": 15,
|
||||
"section": 1,
|
||||
"value": 2104
|
||||
}
|
||||
},
|
||||
"findings": [
|
||||
"Exact actual plan equals pinned preview and spawned/start/end argv. One r290 bridge compile-062 and one link, serial owned new-session children exit0 without timeout, remaining members, cleanup errors or foreign signals; four stdout/stderr logs byteempty.",
|
||||
"Preexecution root binding and all pre-review/current/input fixed pins freshly match. Candidate, SDK, retained parent SDK and base source inventory entries match; original production source/default and current r282 four documents equal captured before receipts.",
|
||||
"SDK133 archive reused byteexact, SDK compilation0, old bridge object reuse0, Godot load0. Native integer-window calibration has not been exercised by this host build.",
|
||||
"Retained runtime floor512MiB/growth16MiB/watch90 guards unchanged; final output size below cap. Continuous floor/growth observations are driver evidence rather than independently replayed monitoring.",
|
||||
"Mach-O header/load commands/nlist independently parsed from raw library: arm64 MH_DYLIB, exact install path, only libc++/libSystem dependencies and external section export _tree_numeric_core_init. This does not establish engine ABI/load or runtime ownership.",
|
||||
"Old r287 failed codec local remains unaccepted; new successful compile/link does not prove its cause or repair correctness at runtime."
|
||||
],
|
||||
"protection_observation": {
|
||||
"inventories": {
|
||||
"SDK_inventory": 344,
|
||||
"parent_SDK_inventory": 344,
|
||||
"candidate_inventory": 3,
|
||||
"base_source_inventory": 6
|
||||
},
|
||||
"source_files": 1299,
|
||||
"default_files": 884,
|
||||
"current_doc4_equal_before": true,
|
||||
"final_output_bytes": 1321187
|
||||
},
|
||||
"remaining_unaccepted": [
|
||||
"Godot ABI/load, mandatory actual four-case calibration, 4024-check local codec/ownership/equivalence, whole647 and performance remain unverified for r290/r291.",
|
||||
"Stable gain,50ms/P95/D10/final172/normalOS/Windows/production adoption/unit completion remain unaccepted."
|
||||
],
|
||||
"reviewer_execution": {
|
||||
"compiler": 0,
|
||||
"link": 0,
|
||||
"engine": 0,
|
||||
"tests": 0,
|
||||
"validator": 0,
|
||||
"author": 0,
|
||||
"new_agents": 0
|
||||
},
|
||||
"pin_counts": {
|
||||
"direct": 71,
|
||||
"current_doc4": 4,
|
||||
"total": 75
|
||||
}
|
||||
}
|
||||
+383
@@ -0,0 +1,383 @@
|
||||
{
|
||||
"passed": true,
|
||||
"review_sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b",
|
||||
"verified_entries": [
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275.py",
|
||||
"bytes": 16495,
|
||||
"sha256": "3f3c7118f9ad880a9f8ea0ed7f98940bd8a18a2edacf354fb9028ffba03f16de"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-preview-r275.json",
|
||||
"bytes": 3379,
|
||||
"sha256": "43d7ddf26df4b28e48699bae16de16442946890c3e302cd15e94a9e3cd84b8e8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/input.json",
|
||||
"bytes": 900666,
|
||||
"sha256": "d2381f455e44d8355f54de0c52ed08d6ffbadbd68836848a87e96073c41e80e9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/sdk/bin/libgodot-cpp.macos.template_debug.arm64.a",
|
||||
"bytes": 2251696,
|
||||
"sha256": "f429c29496622a7bfd460ebf249bb3930a515ca4fedd7efc6d347acab8015c35"
|
||||
},
|
||||
{
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++",
|
||||
"bytes": 141373024,
|
||||
"sha256": "7def90dd8829726686213a747fc5bff1583df933dae5edc55d755479e0bfe00a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76/compile_commands.json",
|
||||
"bytes": 46759,
|
||||
"sha256": "43cbba9c13c03bc8539efac1eaaf4da9b5d3d6a9af3875d8cc3a3994e1a59745"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-actual-independent-review-r133.json",
|
||||
"bytes": 199445,
|
||||
"sha256": "c3cbeb45c1353dfea5f8181d10cc60f8a9b81db55d766ac5db902ac28c159a61"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-r133/input.json",
|
||||
"bytes": 838584,
|
||||
"sha256": "bf6dafe0a55c9ffb0310ef5ede6471aac93f9dee4f4fe6ad84e20e998202514e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-build-r133/libgodot-cpp.macos.template_debug.arm64.a",
|
||||
"bytes": 2284912,
|
||||
"sha256": "4d54f0980c3f445f3013cddb859135b619f28a91205fc8b9fbc9d10bc76c52c3"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-r76.py",
|
||||
"bytes": 14637,
|
||||
"sha256": "e8cfbc4cea630e0cb245d825ac5daf9730e309c4895bcbc949a744f41a2d760a"
|
||||
},
|
||||
{
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/SDKSettings.json",
|
||||
"bytes": 7774,
|
||||
"sha256": "f8d005f09381389167f9e0aeaa169bc9e7dff162ef22ca2fd8e98df7ff1acafe"
|
||||
},
|
||||
{
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/SDKSettings.plist",
|
||||
"bytes": 5388,
|
||||
"sha256": "e5c7c40b8c5dc1a9f99f8b9fa51870f8fe180421225b8201d0c4c826aad11bdc"
|
||||
},
|
||||
{
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/cstddef",
|
||||
"bytes": 1607,
|
||||
"sha256": "53c4fc868f6439e48e52bbc9445a48eab1e597bbfad037ab7480216cb0c6832f"
|
||||
},
|
||||
{
|
||||
"path": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libc++.tbd",
|
||||
"bytes": 155867,
|
||||
"sha256": "5539059b5e609a9518358e42234cc9a439ae0f54e5e8ca136686a8c9ebc35c1a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-preexecution-independent-review-r275.json",
|
||||
"bytes": 21406,
|
||||
"sha256": "38639f46a7dedb6926351ba5ded85cb0740ff4988e7ecff0360817696257b76a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-actual-independent-review-r275.json",
|
||||
"bytes": 21552,
|
||||
"sha256": "54576596f82b8aceca440c1a5514ce811125e977c64c210675feecbb3901929f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286.py",
|
||||
"bytes": 16592,
|
||||
"sha256": "14bdaa2dcfab62f594fcb95a9ead5bc6defbc35e727fbb0de46a7494af780e3a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preview-r286.json",
|
||||
"bytes": 3402,
|
||||
"sha256": "cba922a40684eaf3206c17ac8eaa588b04015a9f09d0dbc5f79a16bf7f4159b2"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json",
|
||||
"bytes": 10950,
|
||||
"sha256": "bffbdcb491ba0aa68eeac764228c04418d2ef3834624cb1fcb98db773e8369fd"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r285-r02.json",
|
||||
"bytes": 4849,
|
||||
"sha256": "27b0b957737d79a3047f2b2a8fa936ac0ec368414d61bb6f097a524a3fd27ead"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_numeric_core.cpp",
|
||||
"bytes": 54002,
|
||||
"sha256": "ce20a90adb8a410dc1b6cbf607b7bfa8bf21eaef158c5c6bfc7a9bbcc703d2b2"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp",
|
||||
"bytes": 59396,
|
||||
"sha256": "75bc2f659f62889fccac5990461f5b51e8b87f30ca0791e4a4c542d37a7c5236"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-r285-r02.py",
|
||||
"bytes": 8607,
|
||||
"sha256": "7316b5b10bc65f7e286b66940767175f1f6b07182b84c8c2b326907bc668f9b5"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/marshalls.cpp",
|
||||
"bytes": 55439,
|
||||
"sha256": "183c43e46d3e4b73c0fb1fc8018da37faeb88c7414dd928b1fb6ff4f4a91a374"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/source.json",
|
||||
"bytes": 585,
|
||||
"sha256": "cbdfe256f152bc8f0c44b849848a94e3eec1e84d6a55f5da69188a6430a148a9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json",
|
||||
"bytes": 14529,
|
||||
"sha256": "40b90fe5086d1bb468f14418657b946fac11615b46cdf66de5f0ccac832a8457"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/input.json",
|
||||
"bytes": 4325,
|
||||
"sha256": "38fb6adc0ec74c0f37631da3f1ddecf185879be9655574a920f1c12566beaa8f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285.json",
|
||||
"bytes": 9547,
|
||||
"sha256": "c3f3525ee6b172bcbbc79838d49beac137d2dbd86deb61cdbefc1a921e743f06"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285/source/tree_numeric_core.cpp",
|
||||
"bytes": 59281,
|
||||
"sha256": "2edd9d6d782cd4072272f0c24b50ce74691899c5a4bbc9ccc946a991217d814a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-null-script-r290.py",
|
||||
"bytes": 2842,
|
||||
"sha256": "3225e506a35abc46acb5a7e38a7d80bdce22f3ad31e7a87d3c347bf15c4d0d6c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json",
|
||||
"bytes": 10858,
|
||||
"sha256": "22e07864c1f7453c3eb38cb81e5bb189e48c9cbe2f31c507b75ce3c51c8174f5"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp",
|
||||
"bytes": 27906,
|
||||
"sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json",
|
||||
"bytes": 291,
|
||||
"sha256": "cd89af6dd2258fe71036edf9f92ce6302d823b68c257405e2a56795726e87834"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref_counted.h",
|
||||
"bytes": 7628,
|
||||
"sha256": "05ef9e22f969dd4e93d5682e898b86e0ed646bf6d21a0225de9c7d68193bf074"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref-source.json",
|
||||
"bytes": 306,
|
||||
"sha256": "633234e67598321413393912f4b52a51b191df5b4adc944d402b10ddd5cc27eb"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/typed_array.hpp",
|
||||
"bytes": 6553,
|
||||
"sha256": "e501619ecd1489869c119c87b6738d6999f9b328bba86b5577023257acce5bbe"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/variant.hpp",
|
||||
"bytes": 12723,
|
||||
"sha256": "323e24a2ef20c5e9a9ab13fb432e8c2aaceeef6907e6c51c80883642354228e3"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-independent-review-r286.json",
|
||||
"bytes": 19698,
|
||||
"sha256": "f3fab769c0baeacbec945e745debaf16c78dfed134bffa33af4683d1779ec72f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r286.json",
|
||||
"bytes": 29934,
|
||||
"sha256": "939152f95590c753f016645ba09241977dd936a7dbb2d488ad923b0ed89ba5e6"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286/input.json",
|
||||
"bytes": 658422,
|
||||
"sha256": "2c952b769af027498eab00ca3c745f1eb1179de20b05579f2e2e76bdce35cb2c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291.py",
|
||||
"bytes": 16568,
|
||||
"sha256": "942b658bc35d67e52a01582a2570632f43824b857799894e814fb7f9b8d4672e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preview-r291.json",
|
||||
"bytes": 3067,
|
||||
"sha256": "ad7123a66da548eb58cf065a3c3f355c91bcc6d2bbabeeba8d874fd2cef27d76"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-validation-independent-review-r77.json",
|
||||
"bytes": 16092,
|
||||
"sha256": "75d3bbff767fb88af266c4b1b9da37d96294ab72b9e07fcac9a3e7e567a29d49"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-bridge-build-validation-r77/execution.json",
|
||||
"bytes": 62521,
|
||||
"sha256": "58eb89af57b5d445058adfacff053171765433570a5d406d324a476ede7695f1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-independent-review-r291.json",
|
||||
"bytes": 29209,
|
||||
"sha256": "fd2a132e043d6d113da2c64d85741f49a3445936de421dc90b775e8d69619968"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-preexecution-root-verification-r291.json",
|
||||
"bytes": 17074,
|
||||
"sha256": "9d722a2fb1c0f281952ab49b7c0843626911d11b0d172aba2f747a9959ad8c47"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/input.json",
|
||||
"bytes": 658374,
|
||||
"sha256": "8db93847bc665f2124b2c9d2ac09b056c3095bcb6379d609a73980a84b243364"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link-phase.json",
|
||||
"bytes": 615,
|
||||
"sha256": "616d40875da101157c8f8d1b543c6dfe8820b850b9aeb3355b08867bd5a86b48"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062-phase.json",
|
||||
"bytes": 614,
|
||||
"sha256": "548fbffb24399d0b005458845a8d4b3416d9666b2f353bdbdc5c898a4763974d"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/execution.json",
|
||||
"bytes": 7210,
|
||||
"sha256": "ecacdcf050b7a77ecf3b356f75bbfbd089813f4b9744fd58f4631282b5898248"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/objects/062-tree_numeric_core.os",
|
||||
"bytes": 278536,
|
||||
"sha256": "7d9bf00dcfd52cf71b5ef4e3f9d885436fce511c9332573006b3aeae35b4b29b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/ended.json",
|
||||
"bytes": 1350,
|
||||
"sha256": "5bce7d1c3e63c816201786afaaedab2de4692cf7af915978d3e3424d566e3b7f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/stdout.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/link/started.json",
|
||||
"bytes": 2066,
|
||||
"sha256": "daf725cc75f4380b9038d3110b9588e9dca292a237e0485a83efbf4ae0eb7ad7"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/ended.json",
|
||||
"bytes": 1872,
|
||||
"sha256": "983f754644cfa451a7653fa542cc06c378365fc8e8e2aea4019675bac838ef6f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/stdout.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/compile-062/started.json",
|
||||
"bytes": 2998,
|
||||
"sha256": "5257011024296a81bf0372f9969da45b5f33b192b772a96bb2bab855b8f76f0c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
],
|
||||
"unit_accepted": false,
|
||||
"performance_accepted": false
|
||||
}
|
||||
+100
@@ -0,0 +1,100 @@
|
||||
{
|
||||
"parent_cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp",
|
||||
"bytes": 59396,
|
||||
"sha256": "75bc2f659f62889fccac5990461f5b51e8b87f30ca0791e4a4c542d37a7c5236"
|
||||
},
|
||||
"parent_header": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"candidate_cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
"candidate_header": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"author": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-null-script-r290.py",
|
||||
"bytes": 2842,
|
||||
"sha256": "3225e506a35abc46acb5a7e38a7d80bdce22f3ad31e7a87d3c347bf15c4d0d6c"
|
||||
},
|
||||
"primary_encoder": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/marshalls.cpp",
|
||||
"bytes": 55439,
|
||||
"sha256": "183c43e46d3e4b73c0fb1fc8018da37faeb88c7414dd928b1fb6ff4f4a91a374"
|
||||
},
|
||||
"primary_encoder_reference": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/source.json",
|
||||
"bytes": 585,
|
||||
"sha256": "cbdfe256f152bc8f0c44b849848a94e3eec1e84d6a55f5da69188a6430a148a9"
|
||||
},
|
||||
"budget": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
"ledger_review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json",
|
||||
"bytes": 14529,
|
||||
"sha256": "40b90fe5086d1bb468f14418657b946fac11615b46cdf66de5f0ccac832a8457"
|
||||
},
|
||||
"doc4": {
|
||||
"IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
"PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
"work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
"progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
},
|
||||
"scope": "Single absent script guard correction to accept NIL or null OBJECT only in typed builtin INT/class-empty arrays. All encoding/calibration/append-pop/fallback/sample/report/notification/ownership behavior otherwise byteexact parent285-r02. Old287 actual112 codec failures retained; cause and actual new codec equivalence unproven until execution. Source-only, unadopted.",
|
||||
"engine_runs": 0,
|
||||
"compiler_runs": 0,
|
||||
"stage_clones": 0,
|
||||
"candidate_adopted": false,
|
||||
"unit_accepted": false,
|
||||
"failed_local_input": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
"failed_local_execution": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
"failed_local_report": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json",
|
||||
"bytes": 10858,
|
||||
"sha256": "22e07864c1f7453c3eb38cb81e5bb189e48c9cbe2f31c507b75ce3c51c8174f5"
|
||||
},
|
||||
"primary_array": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp",
|
||||
"bytes": 27906,
|
||||
"sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b"
|
||||
},
|
||||
"primary_array_reference": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json",
|
||||
"bytes": 291,
|
||||
"sha256": "cd89af6dd2258fe71036edf9f92ce6302d823b68c257405e2a56795726e87834"
|
||||
}
|
||||
}
|
||||
+75
@@ -0,0 +1,75 @@
|
||||
#pragma once
|
||||
// Standalone numeric prototype; not connected to Godot or production.
|
||||
#include <algorithm>
|
||||
#include <cstdint>
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <limits>
|
||||
#include <map>
|
||||
#include <stdexcept>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
namespace the_tree_native {
|
||||
using I = std::int64_t;
|
||||
struct Edge { I neighbor, cost; };
|
||||
struct Result {
|
||||
std::string status = "usable";
|
||||
std::vector<I> costs, parents, discovered, parent_discovered, settled;
|
||||
};
|
||||
I signed_add(I a, I b) {
|
||||
const auto sum = static_cast<std::uint64_t>(a) + static_cast<std::uint64_t>(b);
|
||||
if (sum <= static_cast<std::uint64_t>(std::numeric_limits<I>::max())) return static_cast<I>(sum);
|
||||
return std::numeric_limits<I>::min() + static_cast<I>(sum - (std::uint64_t(1) << 63));
|
||||
}
|
||||
template <typename EdgeProvider>
|
||||
Result search(I n, I start, const std::vector<I>& goals, EdgeProvider&& edge_provider) {
|
||||
Result r;
|
||||
if (start < 0 || start >= n) { r.status = "unusable"; return r; }
|
||||
r.costs.assign(n, std::numeric_limits<I>::max());
|
||||
r.parents.assign(n, -1);
|
||||
std::vector<unsigned char> finalized(n, 0), pending(n, 0);
|
||||
bool unknown_goal = false;
|
||||
I remaining = 0;
|
||||
for (I goal : goals) {
|
||||
if (goal < 0 || goal >= n) { unknown_goal = true; continue; }
|
||||
if (!pending[goal]) { pending[goal] = 1; ++remaining; }
|
||||
}
|
||||
r.costs[start] = 0; r.discovered.push_back(start);
|
||||
std::map<I, std::vector<I>> frontier;
|
||||
frontier[0].push_back(start);
|
||||
while (!frontier.empty()) {
|
||||
auto it = frontier.begin();
|
||||
const I entry_cost = it->first;
|
||||
auto active = std::move(it->second);
|
||||
frontier.erase(it);
|
||||
std::sort(active.begin(), active.end());
|
||||
for (I current : active) {
|
||||
if (finalized[current] || entry_cost != r.costs[current]) continue;
|
||||
finalized[current] = 1;
|
||||
r.settled.push_back(current);
|
||||
if (pending[current]) { pending[current] = 0; --remaining; }
|
||||
if (!remaining && !unknown_goal) return r;
|
||||
for (const Edge& edge : edge_provider(current)) {
|
||||
if (edge.cost <= 0) { r.status = "unusable"; return r; }
|
||||
const I neighbor = edge.neighbor;
|
||||
if (neighbor < 0 || neighbor >= n) { r.status = "unusable"; return r; }
|
||||
const I cost = signed_add(r.costs[current], edge.cost);
|
||||
if (cost < r.costs[current]) { r.status = "wrapped"; return r; }
|
||||
const I known = r.costs[neighbor];
|
||||
const bool better_parent = cost == known && r.parents[neighbor] >= 0 && current < r.parents[neighbor];
|
||||
if (cost > known || (cost == known && !better_parent)) continue;
|
||||
if (r.parents[neighbor] < 0) {
|
||||
r.parent_discovered.push_back(neighbor);
|
||||
if (neighbor != start) r.discovered.push_back(neighbor);
|
||||
}
|
||||
r.parents[neighbor] = current;
|
||||
r.costs[neighbor] = cost;
|
||||
if (finalized[neighbor]) r.settled.erase(std::remove(r.settled.begin(), r.settled.end(), neighbor), r.settled.end());
|
||||
finalized[neighbor] = 0;
|
||||
frontier[cost].push_back(neighbor);
|
||||
}
|
||||
}
|
||||
}
|
||||
return r;
|
||||
}
|
||||
} // namespace the_tree_native
|
||||
+932
@@ -0,0 +1,932 @@
|
||||
// Isolated, uncompiled bridge prototype. No production registration or integration yet.
|
||||
#include "tree_core.hpp"
|
||||
#include <cmath>
|
||||
#include <cstdint>
|
||||
#include <cstring>
|
||||
#include <godot_cpp/classes/ref_counted.hpp>
|
||||
#include <godot_cpp/classes/object.hpp>
|
||||
#include <godot_cpp/variant/vector3i.hpp>
|
||||
#include <godot_cpp/core/class_db.hpp>
|
||||
#include <godot_cpp/godot.hpp>
|
||||
#include <godot_cpp/variant/array.hpp>
|
||||
#include <godot_cpp/variant/callable.hpp>
|
||||
#include <godot_cpp/variant/dictionary.hpp>
|
||||
#include <godot_cpp/variant/packed_int64_array.hpp>
|
||||
#include <godot_cpp/variant/typed_array.hpp>
|
||||
#include <godot_cpp/variant/utility_functions.hpp>
|
||||
|
||||
using namespace godot;
|
||||
using the_tree_native::I;
|
||||
using the_tree_native::Edge;
|
||||
|
||||
class TheTreeNumericCore : public RefCounted {
|
||||
GDCLASS(TheTreeNumericCore, RefCounted)
|
||||
protected:
|
||||
static void _bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("performance_record_sample", "owner", "metric_id", "duration_us"), &TheTreeNumericCore::performance_record_sample);
|
||||
ClassDB::bind_method(D_METHOD("encode_integer_window", "values"), &TheTreeNumericCore::encode_integer_window);
|
||||
ClassDB::bind_method(D_METHOD("guest_tree_edge_rows", "path", "current", "layers", "access"), &TheTreeNumericCore::guest_tree_edge_rows);
|
||||
ClassDB::bind_method(D_METHOD("search", "cells", "indices", "start_index", "goals", "edge_provider"), &TheTreeNumericCore::search);
|
||||
ClassDB::bind_method(D_METHOD("search_cached", "cells", "indices", "start_index", "goals", "edge_provider"), &TheTreeNumericCore::search_cached);
|
||||
ClassDB::bind_method(D_METHOD("clear_edge_cache"), &TheTreeNumericCore::clear_edge_cache);
|
||||
ClassDB::bind_method(D_METHOD("nearest_guest_access", "path", "start", "goals", "fallback_target", "layers", "access", "ticks"), &TheTreeNumericCore::nearest_guest_access);
|
||||
ClassDB::bind_method(D_METHOD("project_guest_candidates", "runtime", "guest_id", "open_state", "degraded_state", "movement_scale", "stair_credit", "orthogonal_cost", "ticks"), &TheTreeNumericCore::project_guest_candidates);
|
||||
}
|
||||
private:
|
||||
// Cache belongs to this instance and one caller-owned graph workspace.
|
||||
// No reuse after cells, indices, filters or edge values change: the caller
|
||||
// must clear it or release this core. The original search never uses it.
|
||||
std::map<I, std::vector<Edge>> cached_edges;
|
||||
// Godot ed1daf0bf's integer Array wire layout; checked against this engine
|
||||
// once per core, never sample values. Every caller-owned Array stays intact.
|
||||
bool integer_wire_checked=false;
|
||||
bool integer_wire_compatible=false;
|
||||
static void wire32(uint8_t *p,uint32_t value) {
|
||||
for (unsigned i=0;i<4;++i) p[i]=uint8_t(value>>(8*i));
|
||||
}
|
||||
static void wire64(uint8_t *p,uint64_t value) {
|
||||
for (unsigned i=0;i<8;++i) p[i]=uint8_t(value>>(8*i));
|
||||
}
|
||||
static int64_t integer_wire_width(int64_t value) {
|
||||
return value<int64_t(INT32_MIN) || value>int64_t(INT32_MAX) ? 12 : 8;
|
||||
}
|
||||
static void wire_integer(uint8_t *p,int64_t value) {
|
||||
const bool wide=integer_wire_width(value)==12;
|
||||
wire32(p,uint32_t(Variant::INT) | (wide ? uint32_t(1)<<16 : 0));
|
||||
if (wide) wire64(p+4,uint64_t(value)); else wire32(p+4,uint32_t(value));
|
||||
}
|
||||
static bool integer_wire_encode(const Array &values,PackedByteArray &out) {
|
||||
const bool typed=values.is_typed();
|
||||
if (typed) {
|
||||
if (values.get_typed_builtin()!=Variant::INT || !values.get_typed_class_name().is_empty()) return false;
|
||||
const Variant script=values.get_typed_script();
|
||||
// Array's absent Ref<Script> can be an OBJECT Variant with a null
|
||||
// pointer. Both absent representations are supported, never a script.
|
||||
if (script.get_type()!=Variant::NIL &&
|
||||
(script.get_type()!=Variant::OBJECT || static_cast<Object *>(script)!=nullptr)) return false;
|
||||
}
|
||||
const int64_t count=values.size(),header=typed ? 12 : 8;
|
||||
// The engine encoder uses a signed-int byte length. Preserve fallback
|
||||
// for oversized inputs and failed allocations, before owner mutation.
|
||||
if (count<0 || count>(int64_t(INT32_MAX)-header)/12) return false;
|
||||
int64_t size=header;
|
||||
for (int64_t i=0;i<count;++i) {
|
||||
const Variant value=values[i];
|
||||
if (value.get_type()!=Variant::INT) return false;
|
||||
const int64_t integer=value;
|
||||
size+=integer_wire_width(integer);
|
||||
}
|
||||
if (out.resize(size)!=OK) return false;
|
||||
uint8_t *p=out.ptrw();
|
||||
wire32(p,uint32_t(Variant::ARRAY) | (typed ? uint32_t(1)<<16 : 0));
|
||||
int64_t offset=4;
|
||||
if (typed) {wire32(p+offset,uint32_t(Variant::INT));offset+=4;}
|
||||
wire32(p+offset,uint32_t(count));offset+=4;
|
||||
// Integer-only synchronous values have no callback during either pass.
|
||||
// Use the engine-owned Array directly, with no throwing vector allocation.
|
||||
for (int64_t i=0;i<count;++i) {
|
||||
const int64_t value=values[i];
|
||||
wire_integer(p+offset,value);offset+=integer_wire_width(value);
|
||||
}
|
||||
return offset==size;
|
||||
}
|
||||
bool integer_wire_ready() {
|
||||
if (integer_wire_checked) return integer_wire_compatible;
|
||||
Array empty,probe;
|
||||
TypedArray<int64_t> typed_empty,typed_probe;
|
||||
const int64_t boundaries[]={INT64_MIN,int64_t(INT32_MIN)-1,INT32_MIN,-1,0,1,INT32_MAX,int64_t(INT32_MAX)+1,INT64_MAX};
|
||||
for (const int64_t value: boundaries) {probe.append(value);typed_probe.append(value);}
|
||||
bool matches=true;
|
||||
for (const Array &value: {empty,probe,Array(typed_empty),Array(typed_probe)}) {
|
||||
PackedByteArray encoded;
|
||||
matches=integer_wire_encode(value,encoded) && encoded==UtilityFunctions::var_to_bytes(value) && matches;
|
||||
}
|
||||
integer_wire_compatible=matches;integer_wire_checked=true;
|
||||
return matches;
|
||||
}
|
||||
static bool integer_wire_update(const PackedByteArray &before,bool typed,int64_t old_count,
|
||||
int64_t appended,bool pop_front,PackedByteArray &after) {
|
||||
const int64_t header=typed ? 12 : 8;
|
||||
if (before.size()<header || old_count<0) return false;
|
||||
const bool remove_appended=pop_front && old_count==0;
|
||||
int64_t skipped=0;
|
||||
if (pop_front && old_count>0) {
|
||||
if (before.size()<header+8) return false;
|
||||
// Exact INT header was produced locally from the current values.
|
||||
skipped=(before[header+2] & 1) ? 12 : 8;
|
||||
if (before.size()<header+skipped) return false;
|
||||
}
|
||||
const int64_t added=remove_appended ? 0 : integer_wire_width(appended);
|
||||
const int64_t size=before.size()-skipped+added;
|
||||
if (size>INT32_MAX || after.resize(size)!=OK) return false;
|
||||
uint8_t *p=after.ptrw();const uint8_t *q=before.ptr();
|
||||
std::memcpy(p,q,size_t(header));
|
||||
wire32(p+header-4,uint32_t(old_count+1-(pop_front ? 1 : 0)));
|
||||
const int64_t kept=before.size()-header-skipped;
|
||||
if (kept>0) std::memcpy(p+header,q+header+skipped,size_t(kept));
|
||||
if (added>0) wire_integer(p+header+kept,appended);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Per-public-call immutable names. No static/global lifetime, cached
|
||||
// object values, script dispatch result or profile; recursive calls own
|
||||
// separate scopes. Destruction precedes leaving the engine call.
|
||||
struct ProjectionNames {
|
||||
const StringName k_ACCESS_LAYER_DENIED{"ACCESS_LAYER_DENIED",false};
|
||||
const StringName k_CONNECTOR{"CONNECTOR",false};
|
||||
const StringName k_GOAL_NOT_PASSABLE{"GOAL_NOT_PASSABLE",false};
|
||||
const StringName k_GOAL_TEMPORARILY_BLOCKED{"GOAL_TEMPORARILY_BLOCKED",false};
|
||||
const StringName k_GOAL_UNREACHABLE{"GOAL_UNREACHABLE",false};
|
||||
const StringName k_OK{"OK",false};
|
||||
const StringName k_START_NOT_PASSABLE{"START_NOT_PASSABLE",false};
|
||||
const StringName k_START_TEMPORARILY_BLOCKED{"START_TEMPORARILY_BLOCKED",false};
|
||||
const StringName k__build_guest_query_tree_compact{"_build_guest_query_tree_compact",false};
|
||||
const StringName k__cache_key{"_cache_key",false};
|
||||
const StringName k__cell_traffic{"_cell_traffic",false};
|
||||
const StringName k__copy_path{"_copy_path",false};
|
||||
const StringName k__diagnose_no_route_reason{"_diagnose_no_route_reason",false};
|
||||
const StringName k__find_facility_access_path{"_find_facility_access_path",false};
|
||||
const StringName k__find_path_internal{"_find_path_internal",false};
|
||||
const StringName k__guest_access_batch_can_select{"_guest_access_batch_can_select",false};
|
||||
const StringName k__guest_batch_has_permitted_layer_crossing{"_guest_batch_has_permitted_layer_crossing",false};
|
||||
const StringName k__guest_has_checked_in{"_guest_has_checked_in",false};
|
||||
const StringName k__guest_step_connector_memo{"_guest_step_connector_memo",false};
|
||||
const StringName k__guest_tree_arithmetic_wrapped{"_guest_tree_arithmetic_wrapped",false};
|
||||
const StringName k__guest_tree_reconstruct_path{"_guest_tree_reconstruct_path",false};
|
||||
const StringName k__need_relief_for_facility_tags{"_need_relief_for_facility_tags",false};
|
||||
const StringName k__passable_cells{"_passable_cells",false};
|
||||
const StringName k__path_cache{"_path_cache",false};
|
||||
const StringName k__query_batch{"_query_batch",false};
|
||||
const StringName k__route_failure{"_route_failure",false};
|
||||
const StringName k__service_category_for_tags{"_service_category_for_tags",false};
|
||||
const StringName k__sorted_name_keys{"_sorted_name_keys",false};
|
||||
const StringName k_arithmetic_wrapped{"arithmetic_wrapped",false};
|
||||
const StringName k_available_quantity{"available_quantity",false};
|
||||
const StringName k_base_quality{"base_quality",false};
|
||||
const StringName k_base_service_minutes{"base_service_minutes",false};
|
||||
const StringName k_begin_guest_path_query_batch{"begin_guest_path_query_batch",false};
|
||||
const StringName k_cache_misses{"cache_misses",false};
|
||||
const StringName k_calculate_guest_batch_path_cost{"calculate_guest_batch_path_cost",false};
|
||||
const StringName k_candidates{"candidates",false};
|
||||
const StringName k_capacity{"capacity",false};
|
||||
const StringName k_compact{"compact",false};
|
||||
const StringName k_cost{"cost",false};
|
||||
const StringName k_cost_values{"cost_values",false};
|
||||
const StringName k_costs{"costs",false};
|
||||
const StringName k_current_cell{"current_cell",false};
|
||||
const StringName k_definition_id{"definition_id",false};
|
||||
const StringName k_definition_registry{"definition_registry",false};
|
||||
const StringName k_elevators{"elevators",false};
|
||||
const StringName k_end_guest_path_query_batch{"end_guest_path_query_batch",false};
|
||||
const StringName k_entrance{"entrance",false};
|
||||
const StringName k_estimated_total_gold{"estimated_total_gold",false};
|
||||
const StringName k_expected_quality{"expected_quality",false};
|
||||
const StringName k_expected_wait{"expected_wait",false};
|
||||
const StringName k_facility_id{"facility_id",false};
|
||||
const StringName k_facility_service{"facility_service",false};
|
||||
const StringName k_facility_tags{"facility_tags",false};
|
||||
const StringName k_get_connector{"get_connector",false};
|
||||
const StringName k_get_facility{"get_facility",false};
|
||||
const StringName k_get_facility_business_price{"get_facility_business_price",false};
|
||||
const StringName k_get_guest{"get_guest",false};
|
||||
const StringName k_get_instances{"get_instances",false};
|
||||
const StringName k_get_step_connector{"get_step_connector",false};
|
||||
const StringName k_graph_revision{"graph_revision",false};
|
||||
const StringName k_group_fit{"group_fit",false};
|
||||
const StringName k_guest_service{"guest_service",false};
|
||||
const StringName k_illegal_level{"illegal_level",false};
|
||||
const StringName k_indices{"indices",false};
|
||||
const StringName k_inputs_available{"inputs_available",false};
|
||||
const StringName k_instance_id{"instance_id",false};
|
||||
const StringName k_inventory_inputs{"inventory_inputs",false};
|
||||
const StringName k_inventory_service{"inventory_service",false};
|
||||
const StringName k_is_open{"is_open",false};
|
||||
const StringName k_last_error{"last_error",false};
|
||||
const StringName k_last_no_route_reason{"last_no_route_reason",false};
|
||||
const StringName k_last_path_cost{"last_path_cost",false};
|
||||
const StringName k_local_inventory_id{"local_inventory_id",false};
|
||||
const StringName k_movement_type{"movement_type",false};
|
||||
const StringName k_need_relief{"need_relief",false};
|
||||
const StringName k_occupied_cells{"occupied_cells",false};
|
||||
const StringName k_origin{"origin",false};
|
||||
const StringName k_owns_connector{"owns_connector",false};
|
||||
const StringName k_path{"path",false};
|
||||
const StringName k_path_handle{"path_handle",false};
|
||||
const StringName k_path_query_measured{"path_query_measured",false};
|
||||
const StringName k_path_service{"path_service",false};
|
||||
const StringName k_queue_entries{"queue_entries",false};
|
||||
const StringName k_reachable{"reachable",false};
|
||||
const StringName k_ready{"ready",false};
|
||||
const StringName k_resource_path{"resource_path",false};
|
||||
const StringName k_risk_level{"risk_level",false};
|
||||
const StringName k_service_category{"service_category",false};
|
||||
const StringName k_settled{"settled",false};
|
||||
const StringName k_staff_only{"staff_only",false};
|
||||
const StringName k_start{"start",false};
|
||||
const StringName k_state{"state",false};
|
||||
const StringName k_supported{"supported",false};
|
||||
const StringName k_tags{"tags",false};
|
||||
const StringName k_tagproj_hunger{"hunger",false};
|
||||
const StringName k_tagproj_sleep{"sleep",false};
|
||||
const StringName k_tagproj_hygiene{"hygiene",false};
|
||||
const StringName k_tagproj_medical{"medical",false};
|
||||
const StringName k_tagproj_leisure{"leisure",false};
|
||||
const StringName k_tagproj_intimacy{"intimacy",false};
|
||||
const StringName k_tagproj_dining{"dining",false};
|
||||
const StringName k_tagproj_lodging{"lodging",false};
|
||||
const StringName k_tagproj_social{"social",false};
|
||||
const StringName k_tagproj_bath{"bath",false};
|
||||
const StringName k_tagproj_wellness{"wellness",false};
|
||||
const StringName k_tagproj_adult_only{"adult_only",false};
|
||||
const StringName k_tagproj_restricted_service{"restricted_service",false};
|
||||
const StringName k_tagproj_food{"food",false};
|
||||
const StringName k_tagproj_service{"service",false};
|
||||
const StringName k_target_cell{"target_cell",false};
|
||||
const StringName k_targets{"targets",false};
|
||||
const StringName k_temporary_block{"temporary_block",false};
|
||||
const StringName k_travel_minutes{"travel_minutes",false};
|
||||
const StringName k_tree{"tree",false};
|
||||
const StringName k_usable{"usable",false};
|
||||
};
|
||||
public:
|
||||
Dictionary encode_integer_window(const Array &values) {
|
||||
Dictionary result;const StringName supported("supported",false),bytes("bytes",false);
|
||||
result[supported]=false;PackedByteArray encoded;
|
||||
if (!integer_wire_ready() || !integer_wire_encode(values,encoded)) return result;
|
||||
result[supported]=true;result[bytes]=encoded;return result;
|
||||
}
|
||||
// Whole builtin integer record operation. No retained sample values or time
|
||||
// suppression. Unsupported data returns before any caller-owned mutation.
|
||||
Dictionary performance_record_sample(Object *owner, const StringName &metric, int64_t duration) {
|
||||
const StringName supported("supported",false), report_key("report",false);
|
||||
Dictionary unsupported; unsupported[supported]=false;
|
||||
Object *script=owner ? owner->get_script() : nullptr;
|
||||
if (!script || String(script->get(StringName("resource_path",false))) != "res://scripts/core/performance_budget.gd" || metric==StringName() || duration<0) return unsupported;
|
||||
const StringName samples_key("_samples",false), ordered_key("_ordered_samples",false), bytes_key("_ordered_sample_bytes",false), integer_key("_integer_window_bytes",false), totals_key("_totals",false), counts_key("_sample_counts",false), budgets_key("_budgets",false);
|
||||
const Variant sv=owner->get(samples_key), ov=owner->get(ordered_key), bv=owner->get(bytes_key), iv=owner->get(integer_key), tv=owner->get(totals_key), cv=owner->get(counts_key), uv=owner->get(budgets_key), capacityv=owner->get(StringName("sample_capacity",false));
|
||||
if (sv.get_type()!=Variant::DICTIONARY || ov.get_type()!=Variant::DICTIONARY || bv.get_type()!=Variant::DICTIONARY || iv.get_type()!=Variant::DICTIONARY || tv.get_type()!=Variant::DICTIONARY || cv.get_type()!=Variant::DICTIONARY || uv.get_type()!=Variant::DICTIONARY || capacityv.get_type()!=Variant::INT) return unsupported;
|
||||
Dictionary samples=sv, orders=ov, rawbytes=bv, integers=iv, totals=tv, counts=cv, budgets=uv;
|
||||
if (samples.is_read_only() || orders.is_read_only() || rawbytes.is_read_only() || integers.is_read_only() || totals.is_read_only() || counts.is_read_only()) return unsupported;
|
||||
const std::vector<Dictionary> maps{samples,orders,rawbytes,integers,totals,counts,budgets};
|
||||
for (size_t i=0;i<maps.size();++i) for (size_t j=i+1;j<maps.size();++j)
|
||||
if (UtilityFunctions::is_same(maps[i],maps[j])) return unsupported;
|
||||
const bool existing=samples.has(metric);
|
||||
Variant rawv=samples.get(metric,Array());
|
||||
if (rawv.get_type()!=Variant::ARRAY) return unsupported;
|
||||
Array values=rawv;
|
||||
if (values.is_read_only()) return unsupported;
|
||||
|
||||
Variant totalv=totals.get(metric,0), countv=counts.get(metric,0), budgetv=budgets.get(metric,Dictionary());
|
||||
if (totalv.get_type()!=Variant::INT || countv.get_type()!=Variant::INT || budgetv.get_type()!=Variant::DICTIONARY) return unsupported;
|
||||
Dictionary budget=budgetv;
|
||||
for (const Dictionary &map: maps) if (UtilityFunctions::is_same(budget,map)) return unsupported;
|
||||
const StringName aggregation_key("aggregation",false), limit_key("limit_us",false);
|
||||
Variant aggregationv=budget.get(aggregation_key,1), limitv=budget.get(limit_key,0);
|
||||
if (aggregationv.get_type()!=Variant::INT || limitv.get_type()!=Variant::INT) return unsupported;
|
||||
// One exact byte snapshot serves both builtin validation helpers inside
|
||||
// this call; there are no external calls between their original checks.
|
||||
PackedByteArray before;
|
||||
const bool fast_wire=integer_wire_ready() && integer_wire_encode(values,before);
|
||||
if (!fast_wire) {
|
||||
for (int64_t i=0;i<values.size();++i) if (values[i].get_type()!=Variant::INT) return unsupported;
|
||||
before=UtilityFunctions::var_to_bytes(values);
|
||||
}
|
||||
const int64_t old_count=values.size();
|
||||
TypedArray<int64_t> ordered;
|
||||
Variant savedbytes=rawbytes.get(metric,PackedByteArray());
|
||||
bool reuse=existing && orders.has(metric) && savedbytes.get_type()==Variant::PACKED_BYTE_ARRAY && PackedByteArray(savedbytes)==before;
|
||||
if (reuse) {
|
||||
Variant orderv=orders[metric];
|
||||
if (orderv.get_type()!=Variant::ARRAY) return unsupported;
|
||||
Array prior=orderv;
|
||||
if (prior.is_read_only() || !prior.is_typed() || prior.get_typed_builtin()!=Variant::INT || prior.size()!=values.size()) return unsupported;
|
||||
ordered=prior;
|
||||
} else {
|
||||
for (int64_t i=0;i<values.size();++i) ordered.append(values[i]);
|
||||
ordered.sort();
|
||||
}
|
||||
// Guards completed: mutations preserve raw and reused ordered aliases.
|
||||
if (!existing) samples[metric]=values;
|
||||
integers[metric]=before;
|
||||
if (!reuse) { orders[metric]=ordered; rawbytes[metric]=before; }
|
||||
values.append(duration);
|
||||
ordered.insert(ordered.bsearch(duration),duration);
|
||||
if (values.size()>int64_t(capacityv)) {
|
||||
Variant removed=values.pop_front();
|
||||
ordered.remove_at(ordered.bsearch(removed));
|
||||
}
|
||||
PackedByteArray after;
|
||||
const bool popped=old_count+1>int64_t(capacityv);
|
||||
if (!fast_wire || !integer_wire_update(before,values.is_typed(),old_count,duration,popped,after))
|
||||
after=UtilityFunctions::var_to_bytes(values);
|
||||
rawbytes[metric]=after; integers[metric]=after;
|
||||
const int64_t lifetime_total=the_tree_native::signed_add(int64_t(totalv),duration);
|
||||
const int64_t lifetime_count=the_tree_native::signed_add(int64_t(countv),1);
|
||||
totals[metric]=lifetime_total; counts[metric]=lifetime_count;
|
||||
const int64_t average=lifetime_count>0 ? lifetime_total/lifetime_count : 0;
|
||||
const int64_t maximum=ordered.is_empty() ? 0 : std::max<int64_t>(0,int64_t(ordered[ordered.size()-1]));
|
||||
int64_t p95=0;
|
||||
if (!ordered.is_empty()) {
|
||||
const int64_t index=std::max<int64_t>(the_tree_native::signed_add(the_tree_native::signed_add(signed_product(95,ordered.size()),99)/100,-1),0);
|
||||
p95=ordered[std::min<int64_t>(index,ordered.size()-1)];
|
||||
}
|
||||
const int64_t aggregation=aggregationv, limit=limitv;
|
||||
// Original default match is P95, including unknown aggregation values.
|
||||
const int64_t measured=aggregation==0 ? average : (aggregation==2 ? maximum : p95);
|
||||
Dictionary report;
|
||||
report[StringName("metric_id",false)]=metric;
|
||||
report[StringName("window_sample_count",false)]=values.size();
|
||||
report[StringName("lifetime_sample_count",false)]=lifetime_count;
|
||||
report[StringName("average_us",false)]=average;
|
||||
report[StringName("p95_us",false)]=p95;
|
||||
report[StringName("maximum_us",false)]=maximum;
|
||||
report[aggregation_key]=aggregation;
|
||||
report[StringName("measured_us",false)]=measured;
|
||||
report[limit_key]=limit;
|
||||
report[StringName("budget_exceeded",false)]=limit>0 && measured>limit;
|
||||
Dictionary result; result[supported]=true; result[report_key]=report; return result;
|
||||
}
|
||||
void clear_edge_cache() { cached_edges.clear(); }
|
||||
Dictionary search(const Array &cells, const Dictionary &indices, I start_index,
|
||||
const Dictionary &goals, const Callable &edge_provider) {
|
||||
return search_impl(cells, indices, start_index, goals, edge_provider, false);
|
||||
}
|
||||
Dictionary search_cached(const Array &cells, const Dictionary &indices, I start_index,
|
||||
const Dictionary &goals, const Callable &edge_provider) {
|
||||
return search_impl(cells, indices, start_index, goals, edge_provider, true);
|
||||
}
|
||||
// One ordered projection, with no new persistent ownership/cache. Only
|
||||
// builtin pure getters and the already guarded sole budget observer qualify.
|
||||
Dictionary project_guest_candidates(Object *runtime, const StringName &guest_id,
|
||||
int64_t open_state, int64_t degraded_state, int64_t movement_scale,
|
||||
int64_t stair_credit, int64_t orthogonal_cost, const Callable &ticks) {
|
||||
const ProjectionNames n;
|
||||
Dictionary unsupported;
|
||||
unsupported[n.k_supported] = false;
|
||||
if (!builtin(n,runtime, "res://autoload/simulation_runtime.gd") || !ticks.is_valid()) return unsupported;
|
||||
Object *path = runtime->get(n.k_path_service);
|
||||
Object *elevators = runtime->get(n.k_elevators);
|
||||
Object *facilities = runtime->get(n.k_facility_service);
|
||||
Object *definitions = runtime->get(n.k_definition_registry);
|
||||
Object *inventory = runtime->get(n.k_inventory_service);
|
||||
Object *guests = runtime->get(n.k_guest_service);
|
||||
if (!builtin(n,path,"res://scripts/world/path_service.gd") ||
|
||||
!builtin(n,elevators,"res://scripts/transport/elevator_service.gd") ||
|
||||
!builtin(n,facilities,"res://scripts/facility/facility_service.gd") ||
|
||||
!builtin(n,definitions,"res://scripts/core/definition_registry.gd") ||
|
||||
!builtin(n,inventory,"res://scripts/inventory/inventory_service.gd") ||
|
||||
!builtin(n,guests,"res://scripts/guest/guest_service.gd") ||
|
||||
!static_cast<bool>(runtime->call(n.k__guest_access_batch_can_select))) return unsupported;
|
||||
Object *guest = guests->call(n.k_get_guest,guest_id);
|
||||
Array candidates;
|
||||
if (!guest) {
|
||||
Dictionary result; result[n.k_supported] = true;
|
||||
result[n.k_candidates] = candidates; return result;
|
||||
}
|
||||
if (!builtin(n,guest,"res://scripts/guest/guest_runtime.gd")) return unsupported;
|
||||
const Array initial = facilities->call(n.k_get_instances);
|
||||
// Preflight is read-only: default registry/get_instances have no public
|
||||
// error/counter effects. Custom resources retain the original whole loop.
|
||||
for (int64_t i=0;i<initial.size();++i) {
|
||||
Object *facility = initial[i];
|
||||
if (!builtin(n,facility,"res://scripts/facility/facility_instance.gd")) return unsupported;
|
||||
Object *definition = definitions->call(n.k_get_facility,facility->get(n.k_definition_id));
|
||||
if (definition && !builtin(n,definition,"res://scripts/data/facility_definition.gd")) return unsupported;
|
||||
}
|
||||
Array goals;
|
||||
for (int64_t i=0;i<initial.size();++i) goals.append_array(facility_access_cells(n,path,initial[i]));
|
||||
const Vector3i start = guest->get(n.k_current_cell);
|
||||
path->call(n.k_begin_guest_path_query_batch,start,goals);
|
||||
const Array ordered = facilities->call(n.k_get_instances);
|
||||
TypedArray<int64_t> layers; layers.push_back(0); layers.push_back(1);
|
||||
TypedArray<StringName> access_ids;
|
||||
for (int64_t i=0;i<ordered.size();++i) {
|
||||
Object *facility = ordered[i];
|
||||
Object *definition = definitions->call(n.k_get_facility,facility->get(n.k_definition_id));
|
||||
if (!definition) continue;
|
||||
const Array tags = definition->get(n.k_tags);
|
||||
if (tags.has(n.k_staff_only)) continue;
|
||||
if (tags.has(n.k_entrance) && static_cast<bool>(runtime->call(n.k__guest_has_checked_in,guest))) continue;
|
||||
bool has_inputs = true;
|
||||
const Dictionary inputs = definition->get(n.k_inventory_inputs);
|
||||
const Array items = runtime->call(n.k__sorted_name_keys,inputs);
|
||||
for (int64_t j=0;j<items.size();++j) {
|
||||
const int64_t quantity = inventory->call(n.k_available_quantity,facility->get(n.k_local_inventory_id),items[j]);
|
||||
if (quantity < static_cast<int64_t>(inputs[items[j]])) {has_inputs=false;break;}
|
||||
}
|
||||
if (!has_inputs) {
|
||||
Dictionary row;row[n.k_facility_id]=facility->get(n.k_instance_id);
|
||||
row[n.k_inputs_available]=false;candidates.push_back(row);continue;
|
||||
}
|
||||
const Array destinations = facility_access_cells(n,path,facility);
|
||||
Dictionary route = nearest_guest_access_impl(n,path,start,destinations,facility->get(n.k_origin),layers,access_ids,ticks);
|
||||
if (static_cast<bool>(route.get(n.k_supported,false))) route.erase(n.k_supported);
|
||||
else route = Dictionary(runtime->call(n.k__find_facility_access_path,start,facility));
|
||||
const Array walk = route.get(n.k_path,Array());
|
||||
const bool plain_tag_relief = builtin(n,runtime,"res://autoload/simulation_runtime.gd") &&
|
||||
tags.is_typed() && tags.get_typed_builtin()==Variant::STRING_NAME;
|
||||
const Dictionary relief = plain_tag_relief ? builtin_tag_relief(n,tags) :
|
||||
Dictionary(runtime->call(n.k__need_relief_for_facility_tags,tags));
|
||||
Dictionary row;
|
||||
row[n.k_facility_id]=facility->get(n.k_instance_id);
|
||||
row[n.k_facility_tags]=tags.duplicate();
|
||||
const int64_t state = facility->get(n.k_state);
|
||||
row[n.k_is_open]=(state==open_state || state==degraded_state);
|
||||
row[n.k_reachable]=route.get(n.k_reachable,false);
|
||||
row[n.k_travel_minutes]=guest_path_minutes(n,path,elevators,walk,movement_scale,stair_credit,orthogonal_cost);
|
||||
const Array queue = facility->get(n.k_queue_entries);
|
||||
const int64_t capacity = facility->get(n.k_capacity);
|
||||
row[n.k_expected_wait]=signed_product(queue.size(),facility->get(n.k_base_service_minutes))/std::max<int64_t>(capacity,1);
|
||||
row[n.k_estimated_total_gold]=runtime->call(n.k_get_facility_business_price,facility);
|
||||
const int64_t quality = facility->get(n.k_base_quality);
|
||||
row[n.k_expected_quality]=std::max<int64_t>(0,std::min<int64_t>(quality,100));
|
||||
row[n.k_need_relief]=relief;
|
||||
row[n.k_risk_level]=int64_t(0);row[n.k_illegal_level]=int64_t(0);
|
||||
row[n.k_group_fit]=signed_product(std::min<int64_t>(capacity,4),5);
|
||||
// Recheck at the original call position: preceding price/observer
|
||||
// callbacks must retain a replaced/custom runtime's original call.
|
||||
const bool plain_tag_category = builtin(n,runtime,"res://autoload/simulation_runtime.gd") &&
|
||||
tags.is_typed() && tags.get_typed_builtin()==Variant::STRING_NAME;
|
||||
row[n.k_service_category]=plain_tag_category ? Variant(builtin_tag_category(n,tags)) :
|
||||
runtime->call(n.k__service_category_for_tags,tags);
|
||||
Dictionary handle;handle[n.k_target_cell]=route.get(n.k_target_cell,guest->get(n.k_current_cell));
|
||||
handle[n.k_graph_revision]=path->get(n.k_graph_revision);
|
||||
row[n.k_path_handle]=handle;candidates.push_back(row);
|
||||
}
|
||||
path->call(n.k_end_guest_path_query_batch);
|
||||
Dictionary result;result[n.k_supported]=true;result[n.k_candidates]=candidates;return result;
|
||||
}
|
||||
private:
|
||||
// Direct translation of the two pure builtin tag methods. Fresh result,
|
||||
// original insertion/branch order, no retained definition/tag memo.
|
||||
static Dictionary builtin_tag_relief(const ProjectionNames &n,const Array &tags) {
|
||||
Dictionary relief;
|
||||
relief[n.k_tagproj_hunger]=int64_t(0);relief[n.k_tagproj_sleep]=int64_t(0);
|
||||
relief[n.k_tagproj_hygiene]=int64_t(0);relief[n.k_tagproj_medical]=int64_t(0);
|
||||
relief[n.k_tagproj_leisure]=int64_t(0);relief[n.k_tagproj_intimacy]=int64_t(0);
|
||||
if(tags.has(n.k_tagproj_dining)) {relief[n.k_tagproj_hunger]=int64_t(80);relief[n.k_tagproj_leisure]=int64_t(10);}
|
||||
if(tags.has(n.k_tagproj_lodging)) {relief[n.k_tagproj_sleep]=int64_t(90);relief[n.k_tagproj_hygiene]=std::max<int64_t>(int64_t(relief[n.k_tagproj_hygiene]),10);}
|
||||
if(tags.has(n.k_tagproj_social)||tags.has(n.k_tagproj_leisure)) relief[n.k_tagproj_leisure]=std::max<int64_t>(int64_t(relief[n.k_tagproj_leisure]),40);
|
||||
if(tags.has(n.k_tagproj_hygiene)||tags.has(n.k_tagproj_bath)) relief[n.k_tagproj_hygiene]=std::max<int64_t>(int64_t(relief[n.k_tagproj_hygiene]),80);
|
||||
if(tags.has(n.k_tagproj_medical)) relief[n.k_tagproj_medical]=int64_t(90);
|
||||
else if(tags.has(n.k_tagproj_wellness)) relief[n.k_tagproj_medical]=std::max<int64_t>(int64_t(relief[n.k_tagproj_medical]),20);
|
||||
if(tags.has(n.k_tagproj_adult_only)||tags.has(n.k_tagproj_restricted_service)) relief[n.k_tagproj_intimacy]=int64_t(80);
|
||||
return relief;
|
||||
}
|
||||
static StringName builtin_tag_category(const ProjectionNames &n,const Array &tags) {
|
||||
if(tags.has(n.k_tagproj_dining))return n.k_tagproj_food;
|
||||
if(tags.has(n.k_tagproj_lodging))return n.k_tagproj_lodging;
|
||||
if(tags.has(n.k_tagproj_social))return n.k_tagproj_leisure;
|
||||
return n.k_tagproj_service;
|
||||
}
|
||||
static bool builtin(const ProjectionNames &n,Object *object,const char *resource) {
|
||||
if (!object) return false;Object *script=object->get_script();
|
||||
return script && String(script->get(n.k_resource_path))==resource;
|
||||
}
|
||||
// Exact builtin cache-key spelling. No normalized/reordered profile and no
|
||||
// persistent cache; String lengths count Unicode codepoints as GDScript does.
|
||||
static String cache_key_suffix(const ProjectionNames &n,Object *path, const TypedArray<int64_t> &layers,
|
||||
const TypedArray<StringName> &access) {
|
||||
String layer_text, access_text;
|
||||
for (int64_t i=0; i<layers.size(); ++i) {
|
||||
if (i) layer_text += ",";
|
||||
layer_text += String::num_int64(static_cast<int64_t>(layers[i]));
|
||||
}
|
||||
for (int64_t i=0; i<access.size(); ++i) {
|
||||
if (i) access_text += ",";
|
||||
const String value = String(static_cast<StringName>(access[i]));
|
||||
access_text += String::num_int64(value.length()) + ":" + value;
|
||||
}
|
||||
return String("|L:") + layer_text + "|A:" + access_text + "|R:" +
|
||||
String::num_int64(static_cast<int64_t>(path->get(n.k_graph_revision)));
|
||||
}
|
||||
static String cache_key_with_suffix(const Vector3i &start, const Vector3i &goal,
|
||||
const String &suffix) {
|
||||
return String::num_int64(start.x) + "," + String::num_int64(start.y) + "," +
|
||||
String::num_int64(start.z) + ">" + String::num_int64(goal.x) + "," +
|
||||
String::num_int64(goal.y) + "," + String::num_int64(goal.z) + suffix;
|
||||
}
|
||||
static int64_t signed_product(int64_t a,int64_t b) {
|
||||
const uint64_t product=static_cast<uint64_t>(a)*static_cast<uint64_t>(b);
|
||||
if (product<=static_cast<uint64_t>(std::numeric_limits<int64_t>::max())) return static_cast<int64_t>(product);
|
||||
return std::numeric_limits<int64_t>::min()+static_cast<int64_t>(product-(uint64_t(1)<<63));
|
||||
}
|
||||
static Array facility_access_cells(const ProjectionNames &n,Object *path,Object *facility) {
|
||||
const Dictionary passable=path->get(n.k__passable_cells);
|
||||
Array occupied=Array(facility->get(n.k_occupied_cells)).duplicate();
|
||||
if (occupied.is_empty()) occupied.push_back(facility->get(n.k_origin));
|
||||
Dictionary unique;
|
||||
for (int64_t i=0;i<occupied.size();++i) {
|
||||
const Vector3i cell=occupied[i];
|
||||
for (int32_t dx : {-1,1}) {
|
||||
// Match GDScript's Vector3i conversion after int64 addition.
|
||||
const Vector3i candidate(int64_t(cell.x)+dx,cell.y,cell.z);
|
||||
if (passable.has(candidate)) unique[candidate]=true;
|
||||
}
|
||||
}
|
||||
const Vector3i origin=facility->get(n.k_origin);if(passable.has(origin)) unique[origin]=true;
|
||||
const Array keys=unique.keys();std::vector<Vector3i> sorted;sorted.reserve(keys.size());
|
||||
for (int64_t i=0;i<keys.size();++i) sorted.push_back(keys[i]);
|
||||
std::sort(sorted.begin(),sorted.end(),[](const Vector3i &a,const Vector3i &b){
|
||||
if(a.z!=b.z)return a.z<b.z;if(a.y!=b.y)return a.y<b.y;return a.x<b.x;
|
||||
});
|
||||
Array result;for(const Vector3i &cell:sorted)result.push_back(cell);return result;
|
||||
}
|
||||
static int64_t guest_path_minutes(const ProjectionNames &n,Object *path,Object *elevators,const Array &route,
|
||||
int64_t movement_scale,int64_t stair_credit,int64_t orthogonal_cost) {
|
||||
Dictionary memo=path->get(n.k__guest_step_connector_memo);
|
||||
// Route-local only. Reuse an ownership result only after an actual
|
||||
// BOOL return and a typed cached step; no script callback occurs on a
|
||||
// repeated typed memo hit. A miss/conversion/custom script keeps calls.
|
||||
const bool builtin_pair = builtin(n,path,"res://scripts/world/path_service.gd") &&
|
||||
builtin(n,elevators,"res://scripts/transport/elevator_service.gd");
|
||||
bool ownership_valid = false;
|
||||
bool ownership_value = false;
|
||||
StringName ownership_connector;
|
||||
for(int64_t i=1;i<route.size();++i) {
|
||||
const Vector3i from=route[i-1],to=route[i];
|
||||
const Dictionary destinations=memo.get(from,Dictionary());
|
||||
StringName connector;
|
||||
const bool memo_hit = destinations.has(to);
|
||||
const bool typed_memo_hit = memo_hit && destinations[to].get_type() == Variant::STRING_NAME;
|
||||
if(memo_hit)connector=destinations[to];
|
||||
else {TypedArray<StringName> access;connector=path->call(n.k_get_step_connector,from,to,access);}
|
||||
bool special;
|
||||
if (builtin_pair && typed_memo_hit && ownership_valid && connector == ownership_connector) {
|
||||
special = ownership_value;
|
||||
} else {
|
||||
const Variant owned = elevators->call(n.k_owns_connector,connector);
|
||||
special = static_cast<bool>(owned);
|
||||
ownership_valid = builtin_pair && typed_memo_hit && owned.get_type() == Variant::BOOL;
|
||||
ownership_value = special;
|
||||
ownership_connector = connector;
|
||||
}
|
||||
if(!special && String(connector).begins_with("infra.connector:") && from.x==to.x && from.z==to.z &&
|
||||
std::abs(int64_t(from.y)-int64_t(to.y))==1) {
|
||||
const Dictionary detail=path->call(n.k_get_connector,connector);
|
||||
special=detail.get(n.k_movement_type,StringName())==Variant(n.k_CONNECTOR) &&
|
||||
static_cast<int64_t>(detail.get(n.k_cost,int64_t(0)))==150 && stair_credit>movement_scale;
|
||||
}
|
||||
if(special) {
|
||||
const int64_t cost=path->call(n.k_calculate_guest_batch_path_cost,route[0],route[route.size()-1],route);
|
||||
return static_cast<int64_t>(std::ceil(static_cast<double>(cost)/static_cast<double>(orthogonal_cost)));
|
||||
}
|
||||
}
|
||||
return std::max<int64_t>(route.size()-1,0);
|
||||
}
|
||||
public:
|
||||
|
||||
// Stateless translation of the builtin nearest access query. The caller
|
||||
// supplies the existing typed default profile and the real Time callable.
|
||||
// Public cache publication, failure diagnostics and fallback stay ordered.
|
||||
Dictionary nearest_guest_access(Object *path, const Vector3i &start,
|
||||
const Array &goals, const Vector3i &fallback_target,
|
||||
const TypedArray<int64_t> &layers, const TypedArray<StringName> &access,
|
||||
const Callable &ticks) {
|
||||
const ProjectionNames n;
|
||||
return nearest_guest_access_impl(n,path,start,goals,fallback_target,layers,access,ticks);
|
||||
}
|
||||
private:
|
||||
Dictionary nearest_guest_access_impl(const ProjectionNames &n,Object *path, const Vector3i &start,
|
||||
const Array &goals, const Vector3i &fallback_target,
|
||||
const TypedArray<int64_t> &layers, const TypedArray<StringName> &access,
|
||||
const Callable &ticks) {
|
||||
Dictionary unsupported;
|
||||
unsupported[n.k_supported] = false;
|
||||
if (!path || !ticks.is_valid() || goals.is_empty()) return unsupported;
|
||||
Object *script = path->get_script();
|
||||
if (!script || String(script->get(n.k_resource_path)) != "res://scripts/world/path_service.gd") return unsupported;
|
||||
Dictionary batch = path->get(n.k__query_batch);
|
||||
if (batch.is_empty() || start != static_cast<Vector3i>(batch[n.k_start])) return unsupported;
|
||||
const Dictionary passable = path->get(n.k__passable_cells);
|
||||
if (!passable.has(start) || blocked(n,path, start) || !layers.has(start.z)) return unsupported;
|
||||
const Dictionary targets = batch[n.k_targets];
|
||||
Dictionary cache = path->get(n.k__path_cache);
|
||||
// Exact builtin validation loop has no callback before ticks.call().
|
||||
// Build the unchanged profile/revision suffix lazily at the first key.
|
||||
String key_suffix;
|
||||
bool key_suffix_ready = false;
|
||||
for (int64_t j = 0; j < goals.size(); ++j) {
|
||||
if (goals[j].get_type() != Variant::VECTOR3I) return unsupported;
|
||||
const Vector3i cell = goals[j];
|
||||
if (!targets.has(cell)) {
|
||||
const bool searchable = passable.has(cell) && layers.has(cell.z) && !blocked(n,path, cell);
|
||||
if (searchable && (start.z == cell.z || static_cast<bool>(path->call(n.k__guest_batch_has_permitted_layer_crossing, start, cell, layers, access)))) return unsupported;
|
||||
}
|
||||
if (!key_suffix_ready) {
|
||||
key_suffix = cache_key_suffix(n,path, layers, access);
|
||||
key_suffix_ready = true;
|
||||
}
|
||||
const String key = cache_key_with_suffix(start, cell, key_suffix);
|
||||
if (cache.has(key)) return unsupported;
|
||||
}
|
||||
const int64_t started = ticks.call();
|
||||
if (!static_cast<bool>(batch[n.k_ready])) {
|
||||
batch[n.k_tree] = path->call(n.k__build_guest_query_tree_compact, start, targets, layers, access);
|
||||
batch[n.k_arithmetic_wrapped] = path->get(n.k__guest_tree_arithmetic_wrapped);
|
||||
batch[n.k_ready] = true;
|
||||
}
|
||||
const Dictionary tree = batch[n.k_tree];
|
||||
if (!static_cast<bool>(tree.get(n.k_usable, false)) || static_cast<bool>(batch.get(n.k_arithmetic_wrapped, false))) return unsupported;
|
||||
Vector3i best_cell = fallback_target;
|
||||
bool found = false;
|
||||
int64_t best_cost = 0;
|
||||
const Dictionary settled = tree[n.k_settled];
|
||||
for (int64_t j = 0; j < goals.size(); ++j) {
|
||||
const Vector3i cell = goals[j];
|
||||
if (!targets.has(cell) || !settled.has(cell)) continue;
|
||||
if (!tree_has_cost(n,tree, cell)) return unsupported;
|
||||
const int64_t cost = tree_cost(n,tree, cell);
|
||||
if (!found || cost < best_cost) {
|
||||
found = true;
|
||||
best_cost = cost;
|
||||
best_cell = cell;
|
||||
}
|
||||
}
|
||||
TypedArray<Vector3i> best_path;
|
||||
if (found) {
|
||||
best_path = resolve_ready_guest_point(n,path, start, best_cell, tree, layers, access);
|
||||
if (best_path.is_empty()) return unsupported;
|
||||
}
|
||||
if (!goals.is_empty() && (!found || goals[goals.size() - 1] != Variant(best_cell))) {
|
||||
resolve_ready_guest_point(n,path, start, goals[goals.size() - 1], tree, layers, access);
|
||||
}
|
||||
const int64_t elapsed = the_tree_native::signed_add(static_cast<int64_t>(ticks.call()), the_tree_native::signed_add(~started, 1));
|
||||
path->emit_signal(n.k_path_query_measured, std::max<int64_t>(elapsed, 0));
|
||||
Dictionary result;
|
||||
result[n.k_supported] = true;
|
||||
result[n.k_reachable] = found;
|
||||
result[n.k_path] = best_path;
|
||||
result[n.k_target_cell] = best_cell;
|
||||
return result;
|
||||
}
|
||||
private:
|
||||
static bool blocked(const ProjectionNames &n,Object *path, const Vector3i &cell) {
|
||||
const Dictionary traffic_map = path->get(n.k__cell_traffic);
|
||||
const Dictionary traffic = traffic_map.get(cell, Dictionary());
|
||||
return !traffic.is_empty() && static_cast<bool>(traffic[n.k_temporary_block]);
|
||||
}
|
||||
static bool tree_has_cost(const ProjectionNames &n,const Dictionary &tree, const Vector3i &cell) {
|
||||
if (!static_cast<bool>(tree.get(n.k_compact, false))) {
|
||||
const Dictionary values = tree[n.k_costs];
|
||||
return values.has(cell);
|
||||
}
|
||||
const Dictionary indices = tree[n.k_indices];
|
||||
if (!indices.has(cell)) return false;
|
||||
const int64_t index = indices[cell];
|
||||
const PackedInt64Array values = tree[n.k_cost_values];
|
||||
return index >= 0 && index < values.size();
|
||||
}
|
||||
static int64_t tree_cost(const ProjectionNames &n,const Dictionary &tree, const Vector3i &cell) {
|
||||
if (!static_cast<bool>(tree.get(n.k_compact, false))) {
|
||||
const Dictionary values = tree[n.k_costs];
|
||||
return static_cast<int64_t>(values[cell]);
|
||||
}
|
||||
const Dictionary indices = tree[n.k_indices];
|
||||
const PackedInt64Array values = tree[n.k_cost_values];
|
||||
return values[static_cast<int64_t>(indices[cell])];
|
||||
}
|
||||
static TypedArray<Vector3i> resolve_ready_guest_point(const ProjectionNames &n,Object *path,
|
||||
const Vector3i &start, const Vector3i &goal, const Dictionary &tree,
|
||||
const TypedArray<int64_t> &layers, const TypedArray<StringName> &access) {
|
||||
const Dictionary passable = path->get(n.k__passable_cells);
|
||||
if (!passable.has(start)) return path->call(n.k__route_failure, n.k_START_NOT_PASSABLE);
|
||||
if (!passable.has(goal)) return path->call(n.k__route_failure, n.k_GOAL_NOT_PASSABLE);
|
||||
if (!layers.has(start.z) || !layers.has(goal.z)) return path->call(n.k__route_failure, n.k_ACCESS_LAYER_DENIED);
|
||||
if (blocked(n,path, start)) return path->call(n.k__route_failure, n.k_START_TEMPORARILY_BLOCKED);
|
||||
if (blocked(n,path, goal)) return path->call(n.k__route_failure, n.k_GOAL_TEMPORARILY_BLOCKED);
|
||||
// ticks/tree callbacks may have changed the script or revision. Recheck
|
||||
// at this original call position and never reuse the pre-tick suffix.
|
||||
const String key = builtin(n,path,"res://scripts/world/path_service.gd") ?
|
||||
cache_key_with_suffix(start, goal, cache_key_suffix(n,path, layers, access)) :
|
||||
String(path->call(n.k__cache_key, start, goal, layers, access));
|
||||
Dictionary cache = path->get(n.k__path_cache);
|
||||
const Dictionary batch = path->get(n.k__query_batch);
|
||||
const Dictionary targets = batch[n.k_targets];
|
||||
if (cache.has(key) || !targets.has(goal)) return path->call(n.k__find_path_internal, start, goal);
|
||||
path->set(n.k_cache_misses, the_tree_native::signed_add(static_cast<int64_t>(path->get(n.k_cache_misses)), 1));
|
||||
if (start.z != goal.z && !static_cast<bool>(path->call(n.k__guest_batch_has_permitted_layer_crossing, start, goal, layers, access))) return path->call(n.k__route_failure, n.k_GOAL_UNREACHABLE);
|
||||
TypedArray<Vector3i> route;
|
||||
const Dictionary settled = tree[n.k_settled];
|
||||
if (start == goal) route.push_back(start);
|
||||
else if (settled.has(goal)) route = Array(path->call(n.k__guest_tree_reconstruct_path, tree, goal));
|
||||
if (route.is_empty()) return path->call(n.k__route_failure, path->call(n.k__diagnose_no_route_reason, start, goal, layers, access));
|
||||
cache[key] = path->call(n.k__copy_path, route);
|
||||
path->set(n.k_last_no_route_reason, n.k_OK);
|
||||
path->set(n.k_last_path_cost, tree_cost(n,tree, goal));
|
||||
path->set(n.k_last_error, String(""));
|
||||
return route;
|
||||
}
|
||||
public:
|
||||
private:
|
||||
// One existing builtin provider operation, with no new value cache. Only
|
||||
// connector-free WALK rows qualify; unsupported cases call the old provider.
|
||||
// All work stays private until the original final shared[current] assignment.
|
||||
struct WalkEdgeNames {
|
||||
const StringName resource_path{"resource_path",false}, constants_method{"get_script_constant_map",false};
|
||||
const StringName front{"FRONT",false}, back{"BACK",false}, walk{"MOVEMENT_WALK",false};
|
||||
const StringName base{"ORTHOGONAL_MOVE_COST",false}, congestion{"CONGESTION_COST_PER_EXCESS",false};
|
||||
const StringName workspace{"_guest_tree_workspace",false}, edges{"edges",false}, indices{"indices",false};
|
||||
const StringName adjacency{"_adjacency",false}, traffic{"_cell_traffic",false}, vertical{"_vertical_walk_requires_connector",false};
|
||||
const StringName to{"to",false}, connector{"connector_id",false}, access{"access_id",false}, movement{"movement_type",false};
|
||||
const StringName base_cost{"base_cost",false}, cost{"cost",false}, temporary{"temporary_block",false};
|
||||
const StringName dynamic{"dynamic_cost",false}, density{"current_density",false}, capacity{"base_capacity",false};
|
||||
const StringName provider{"_guest_tree_shared_edges",false};
|
||||
};
|
||||
struct WalkEdgeContext {
|
||||
Object *path=nullptr;
|
||||
int64_t front=0, back=0, base=0, congestion=0;
|
||||
StringName walk;
|
||||
};
|
||||
static bool walk_edge_context(const WalkEdgeNames &n,Object *path,const Array &layers,
|
||||
const Array &access,WalkEdgeContext &context) {
|
||||
if (!path || layers.size()!=2 || !access.is_empty() ||
|
||||
layers[0].get_type()!=Variant::INT || layers[1].get_type()!=Variant::INT) return false;
|
||||
Object *script=path->get_script();
|
||||
if (!script || String(script->get(n.resource_path))!="res://scripts/world/path_service.gd" ||
|
||||
!script->has_method(n.constants_method)) return false;
|
||||
const Variant value=script->call(n.constants_method);
|
||||
if (value.get_type()!=Variant::DICTIONARY) return false;
|
||||
const Dictionary constants=value;
|
||||
for (const StringName &key : {n.front,n.back,n.base,n.congestion})
|
||||
if (constants.get(key,Variant()).get_type()!=Variant::INT) return false;
|
||||
if (constants.get(n.walk,Variant()).get_type()!=Variant::STRING_NAME ||
|
||||
int64_t(layers[0])!=int64_t(constants[n.front]) ||
|
||||
int64_t(layers[1])!=int64_t(constants[n.back])) return false;
|
||||
context.path=path;context.front=constants[n.front];context.back=constants[n.back];
|
||||
context.base=constants[n.base];context.congestion=constants[n.congestion];context.walk=constants[n.walk];
|
||||
return true;
|
||||
}
|
||||
static bool builtin_walk_edge_rows(const WalkEdgeNames &n,const WalkEdgeContext &context,
|
||||
const Vector3i ¤t,Array &rows) {
|
||||
if (!context.path) return false;
|
||||
const Variant workspace_value=context.path->get(n.workspace);
|
||||
if (workspace_value.get_type()!=Variant::DICTIONARY) return false;
|
||||
const Dictionary workspace=workspace_value;
|
||||
const Variant shared_value=workspace.get(n.edges,Variant());
|
||||
if (shared_value.get_type()!=Variant::DICTIONARY) return false;
|
||||
Dictionary shared=shared_value;
|
||||
// Original cached-row branch precedes readonly and all other state reads.
|
||||
if (shared.has(current)) {
|
||||
const Variant cached=shared[current];
|
||||
if (cached.get_type()!=Variant::ARRAY) return false;
|
||||
rows=cached;return true;
|
||||
}
|
||||
if (shared.is_read_only()) return false;
|
||||
const Variant indices_value=workspace.get(n.indices,Variant()), adjacency_value=context.path->get(n.adjacency);
|
||||
const Variant traffic_value=context.path->get(n.traffic), vertical_value=context.path->get(n.vertical);
|
||||
if (indices_value.get_type()!=Variant::DICTIONARY || adjacency_value.get_type()!=Variant::DICTIONARY ||
|
||||
traffic_value.get_type()!=Variant::DICTIONARY || vertical_value.get_type()!=Variant::BOOL) return false;
|
||||
const Dictionary indices=indices_value, adjacency=adjacency_value, traffic=traffic_value;
|
||||
const Variant raw_value=adjacency.get(current,Array());
|
||||
if (raw_value.get_type()!=Variant::ARRAY) return false;
|
||||
const Array raw=raw_value;Array result;
|
||||
for (int64_t i=0;i<raw.size();++i) {
|
||||
if (raw[i].get_type()!=Variant::DICTIONARY) return false;
|
||||
const Dictionary edge=raw[i];
|
||||
if (edge.get(n.to,Variant()).get_type()!=Variant::VECTOR3I) return false;
|
||||
const Vector3i neighbor=edge[n.to];
|
||||
if (neighbor.z!=context.front && neighbor.z!=context.back) continue;
|
||||
const Variant row_value=traffic.get(neighbor,Dictionary());
|
||||
if (row_value.get_type()!=Variant::DICTIONARY) return false;
|
||||
const Dictionary row=row_value;
|
||||
if (!row.is_empty()) {
|
||||
if (row.get(n.temporary,Variant()).get_type()!=Variant::BOOL) return false;
|
||||
if (bool(row[n.temporary])) continue;
|
||||
}
|
||||
// Preserve old method for every connector/access/other movement row.
|
||||
if (edge.get(n.connector,Variant()).get_type()!=Variant::STRING_NAME ||
|
||||
edge.get(n.access,Variant()).get_type()!=Variant::STRING_NAME ||
|
||||
edge.get(n.movement,Variant()).get_type()!=Variant::STRING_NAME) return false;
|
||||
const StringName connector=edge[n.connector], access=edge[n.access], movement=edge[n.movement];
|
||||
if (!connector.is_empty() || !access.is_empty() || movement!=context.walk) return false;
|
||||
if (bool(vertical_value) && current.y!=neighbor.y) continue;
|
||||
const Variant base=edge.get(n.base_cost,edge.get(n.cost,context.base));
|
||||
if (base.get_type()!=Variant::INT) return false;
|
||||
int64_t dynamic=0;
|
||||
if (!row.is_empty()) {
|
||||
for (const StringName &key : {n.dynamic,n.density,n.capacity})
|
||||
if (row.get(key,Variant()).get_type()!=Variant::INT) return false;
|
||||
const int64_t excess=the_tree_native::signed_add(int64_t(row[n.density]),
|
||||
the_tree_native::signed_add(~int64_t(row[n.capacity]),1));
|
||||
dynamic=the_tree_native::signed_add(int64_t(row[n.dynamic]),
|
||||
signed_product(excess>0?excess:0,context.congestion));
|
||||
}
|
||||
const int64_t cost=the_tree_native::signed_add(int64_t(base),dynamic);
|
||||
Array pair;pair.push_back(neighbor);pair.push_back(cost);result.push_back(pair);
|
||||
// Same short circuit and first invalid prefix as the original method.
|
||||
if (cost<=0 || !indices.has(neighbor)) break;
|
||||
}
|
||||
shared[current]=result;rows=result;return true;
|
||||
}
|
||||
public:
|
||||
Dictionary guest_tree_edge_rows(Object *path,const Vector3i ¤t,const Array &layers,const Array &access) {
|
||||
const WalkEdgeNames names;WalkEdgeContext context;Array rows;
|
||||
Dictionary result;const StringName supported{"supported",false}, row_key{"rows",false};
|
||||
result[supported]=false;
|
||||
if (!walk_edge_context(names,path,layers,access,context) ||
|
||||
!builtin_walk_edge_rows(names,context,current,rows)) return result;
|
||||
result[supported]=true;result[row_key]=rows;return result;
|
||||
}
|
||||
private:
|
||||
Dictionary search_impl(const Array &cells, const Dictionary &indices, I start_index,
|
||||
const Dictionary &goals, const Callable &edge_provider, bool use_edge_cache) {
|
||||
Dictionary output;
|
||||
output[StringName("status")] = String("unusable");
|
||||
if (start_index < 0 || start_index >= cells.size() || !edge_provider.is_valid()) return output;
|
||||
try {
|
||||
std::vector<I> goal_indices;
|
||||
const Array goal_keys = goals.keys();
|
||||
for (I j = 0; j < goal_keys.size(); ++j)
|
||||
goal_indices.push_back(static_cast<I>(indices.get(goal_keys[j], I(-1))));
|
||||
Array arguments;
|
||||
arguments.resize(1);
|
||||
const WalkEdgeNames walk_names;WalkEdgeContext walk_context;
|
||||
if (edge_provider.get_method()==walk_names.provider && edge_provider.get_argument_count()==1 &&
|
||||
edge_provider.get_bound_arguments_count()==2 && edge_provider.get_unbound_arguments_count()==0) {
|
||||
const Array bound=edge_provider.get_bound_arguments();
|
||||
if (bound.size()==2 && bound[0].get_type()==Variant::ARRAY && bound[1].get_type()==Variant::ARRAY)
|
||||
walk_edge_context(walk_names,edge_provider.get_object(),bound[0],bound[1],walk_context);
|
||||
}
|
||||
// Call the original bound Godot edge method only when the search expands a node.
|
||||
// Preserve its lazy cache population, filter ordering and first invalid row.
|
||||
auto original_edges = [&](I current) {
|
||||
arguments[0] = cells[current];
|
||||
Array fused;bool fused_supported=false;
|
||||
if (cells[current].get_type()==Variant::VECTOR3I) {
|
||||
const Vector3i cell=cells[current];
|
||||
fused_supported=builtin_walk_edge_rows(walk_names,walk_context,cell,fused);
|
||||
}
|
||||
const Variant value = fused_supported ? Variant(fused) : edge_provider.callv(arguments);
|
||||
if (value.get_type() != Variant::ARRAY) return std::vector<Edge>{{-1, 0}};
|
||||
const Array rows = value;
|
||||
std::vector<Edge> result;
|
||||
result.reserve(rows.size());
|
||||
for (I j = 0; j < rows.size(); ++j) {
|
||||
if (rows[j].get_type() != Variant::ARRAY) { result.push_back({-1, 0}); break; }
|
||||
const Array row = rows[j];
|
||||
if (row.size() != 2 || row[1].get_type() != Variant::INT) {
|
||||
result.push_back({-1, 0}); break;
|
||||
}
|
||||
const I cost = static_cast<I>(row[1]);
|
||||
// Nonpositive cost is rejected before requesting the neighbor index.
|
||||
if (cost <= 0) { result.push_back({-1, cost}); break; }
|
||||
const I neighbor = static_cast<I>(indices.get(row[0], I(-1)));
|
||||
result.push_back({neighbor, cost});
|
||||
if (neighbor < 0) break;
|
||||
}
|
||||
return result;
|
||||
};
|
||||
auto edges = [&](I current) {
|
||||
if (!use_edge_cache) return original_edges(current);
|
||||
const auto found = cached_edges.find(current);
|
||||
if (found != cached_edges.end()) return found->second;
|
||||
// Populate only when the old algorithm expands this same node.
|
||||
// Retain original provider validation and first-invalid prefix.
|
||||
auto converted = original_edges(current);
|
||||
cached_edges.emplace(current, converted);
|
||||
return converted;
|
||||
};
|
||||
const auto result = the_tree_native::search(cells.size(), start_index, goal_indices, edges);
|
||||
output[StringName("status")] = String(result.status.c_str());
|
||||
if (result.status != "usable") return output;
|
||||
PackedInt64Array costs, parents;
|
||||
if (costs.resize(result.costs.size()) != OK || parents.resize(result.parents.size()) != OK) {
|
||||
output[StringName("status")] = String("unusable");
|
||||
return output;
|
||||
}
|
||||
for (I j = 0; j < cells.size(); ++j) { costs.set(j, result.costs[j]); parents.set(j, result.parents[j]); }
|
||||
TypedArray<int64_t> discovered, parent_discovered;
|
||||
for (I j : result.discovered) discovered.push_back(j);
|
||||
for (I j : result.parent_discovered) parent_discovered.push_back(j);
|
||||
Dictionary settled;
|
||||
for (I j : result.settled) settled[cells[j]] = true;
|
||||
output[StringName("cost_values")] = costs;
|
||||
output[StringName("parent_indices")] = parents;
|
||||
output[StringName("discovered")] = discovered;
|
||||
output[StringName("parent_discovered")] = parent_discovered;
|
||||
output[StringName("settled")] = settled;
|
||||
return output;
|
||||
} catch (const std::exception &) {
|
||||
output = Dictionary();
|
||||
output[StringName("status")] = String("unusable");
|
||||
return output;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
void initialize_tree_numeric_core(ModuleInitializationLevel level) {
|
||||
if (level == MODULE_INITIALIZATION_LEVEL_SCENE) GDREGISTER_CLASS(TheTreeNumericCore);
|
||||
}
|
||||
void uninitialize_tree_numeric_core(ModuleInitializationLevel) {}
|
||||
|
||||
extern "C" {
|
||||
GDExtensionBool GDE_EXPORT tree_numeric_core_init(GDExtensionInterfaceGetProcAddress get_proc,
|
||||
GDExtensionClassLibraryPtr library, GDExtensionInitialization *initialization) {
|
||||
GDExtensionBinding::InitObject init(get_proc, library, initialization);
|
||||
init.register_initializer(initialize_tree_numeric_core);
|
||||
init.register_terminator(uninitialize_tree_numeric_core);
|
||||
init.set_minimum_library_initialization_level(MODULE_INITIALIZATION_LEVEL_SCENE);
|
||||
return init.init();
|
||||
}
|
||||
}
|
||||
+695
@@ -0,0 +1,695 @@
|
||||
{
|
||||
"review_id": "p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04",
|
||||
"reviewed_at": "2026-10-11T23:17:12.540851+00:00",
|
||||
"finite_s6_impact_accepted": true,
|
||||
"finite_existing_impact_accepted": true,
|
||||
"finite_whole647_equivalence_accepted": true,
|
||||
"finite_pair_observation_accepted": true,
|
||||
"finite_timing_observation_accepted": true,
|
||||
"finite_exit_observation_accepted": true,
|
||||
"combined_execution_accepted": true,
|
||||
"blockers": [],
|
||||
"evidence_sha256": {
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot": {
|
||||
"path": "/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"bytes": 351312912,
|
||||
"sha256": "c7cccbf8fb143e34e02fd6521e09be2c2b974f0d5db080b19071c9c570718ccf"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd",
|
||||
"bytes": 17582,
|
||||
"sha256": "92d5e1956f4e613e12555d756de4f71fef03678cde159ac68fac3188ce3f336e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py",
|
||||
"bytes": 26296,
|
||||
"sha256": "320ca668732b4ff72fc4449998af2327d4e5c527b06896740806aaf0487282b4"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd",
|
||||
"bytes": 2276,
|
||||
"sha256": "597696c705cc8f0e79a35265ca3ef8df55f7fc3c4e0e5a2ce9a4e20e29e29a6f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-candidate-r265-r03/performance_budget.candidate.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-candidate-r265-r03/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd",
|
||||
"bytes": 10355,
|
||||
"sha256": "742c464d16ab417cbc3c2930d43e508faf5c9f7688da416324ca1150bdb9b6b9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/world/path_service.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/world/path_service.gd",
|
||||
"bytes": 132925,
|
||||
"sha256": "6b7f4e989ea9b09495f814d8ecb294028d10794005966414bf52640e122b0d17"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-single-actor-path-native-r03/diagnostic-measurement/checkpoint646.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-single-actor-path-native-r03/diagnostic-measurement/checkpoint646.varbytes.zst",
|
||||
"bytes": 240032,
|
||||
"sha256": "1a88f7ed27d1d32102c6fe3a9533221d2565191712ed15b631190479d1d41505"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-report-window-trusted-report-whole647-native-r02/diagnostic-measurement/after647.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-report-window-trusted-report-whole647-native-r02/diagnostic-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage/tests/s6/test_performance_budget.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage/tests/s6/test_performance_budget.gd",
|
||||
"bytes": 3968,
|
||||
"sha256": "1ae5490637d73b519bf9ed0e00bda0e034d5ea0e589493bcf8886e4d1ff63689"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage/autoload/game_clock.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage/autoload/game_clock.gd",
|
||||
"bytes": 841,
|
||||
"sha256": "39400634a57ccbf8c584b54a15a259048a95da90b1528330151e45667d65f7f7"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-whole-pair-r253-r02/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-whole-pair-r253-r02/input.json",
|
||||
"bytes": 1205935,
|
||||
"sha256": "b116fd3e0dbad6b84594486dfaa531845e549482493a76dd7333a95dc760453b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-whole-pair-actual-independent-review-r253-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-whole-pair-actual-independent-review-r253-r02.json",
|
||||
"bytes": 37005,
|
||||
"sha256": "f4c2b2c17da88ddf1f4f65bc2aacb53d5e5f062447df46e61bf724f7f3200d3c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-impact-whole-r262/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-impact-whole-r262/input.json",
|
||||
"bytes": 972136,
|
||||
"sha256": "c8e7282ea7125c97eb8f8abe2914e7ecae28d76b368a042855a0ee11ccae68ba"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-impact-whole-actual-independent-review-r262.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-impact-whole-actual-independent-review-r262.json",
|
||||
"bytes": 37515,
|
||||
"sha256": "530a10149df9138948f037937fda669f7f8d3b420a70260b4ecb5c4f96298782"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/candidate.gdextension": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/candidate.gdextension",
|
||||
"bytes": 323,
|
||||
"sha256": "04c4311764ab9d75be3df884f960f0944cd474847fb1ca061224ce4c1bc2aef7"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"/private/tmp/TheTree-pure-tags-r278-r04-72046c25b9384bcf8ea8ec91123462e1/candidate.dylib": {
|
||||
"path": "/private/tmp/TheTree-pure-tags-r278-r04-72046c25b9384bcf8ea8ec91123462e1/candidate.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/access.gdextension": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/access.gdextension",
|
||||
"bytes": 331,
|
||||
"sha256": "a091aea5495a53bce3d02752f04dc18b7d53f834d3bac04c9d14379a7f06d260"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"/private/tmp/TheTree-integer-window-local-r292-5f53aa2d1ea44e93bc03acf3114567b5/access.dylib": {
|
||||
"path": "/private/tmp/TheTree-integer-window-local-r292-5f53aa2d1ea44e93bc03acf3114567b5/access.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-impact-whole-r293-r03.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-impact-whole-r293-r03.py",
|
||||
"bytes": 7035,
|
||||
"sha256": "c77591138353ff0515e109b81e623cab24f27c4cf330451b2c7abe9194cdda5f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03.py",
|
||||
"bytes": 7697,
|
||||
"sha256": "fd42990c765c62815726130bb43b3effd33272e776b24139471a4bc918bdba21"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/s6-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/s6-guarded.gd",
|
||||
"bytes": 1570,
|
||||
"sha256": "090cdce985eb128b903b66a27367d238337a89d79b2c0208576bb48a5744f986"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/whole.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/whole.gd",
|
||||
"bytes": 4444,
|
||||
"sha256": "7ac55231ff311024b6087ba123bf824ca72bab83172f06950e6235385a108fa3"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/whole.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/whole.gd",
|
||||
"bytes": 4455,
|
||||
"sha256": "8af18e506a8cf859103c9d2a79f0d31f4d65f9f5d022f2848bbbb4ead21b9fc4"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281.py",
|
||||
"bytes": 7665,
|
||||
"sha256": "a2f907ff0b3abbefb9df0011d4304bc64169969bbf8324fdb04467c604f00d38"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/input.json",
|
||||
"bytes": 975133,
|
||||
"sha256": "cab7c33fad7f013628756bb968d78e0da57d712de3474c31287f4e93f91a21ad"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-actual-independent-review-r281.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-actual-independent-review-r281.json",
|
||||
"bytes": 46359,
|
||||
"sha256": "1876c883e898fdfb8c1c4fb84ee5950930719d0e623b3f010fad0312402166b4"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/actual-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/actual-root-verification.json",
|
||||
"bytes": 28310,
|
||||
"sha256": "1d3d3a0d804d508e7daf11551c30997b0ef048660ceaafb814fd7e07104ae292"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/input.json",
|
||||
"bytes": 974387,
|
||||
"sha256": "99722da0e6a2745962da2bc0c58c99a26363e86eb549a3039b06674e15c594b1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"bytes": 40394,
|
||||
"sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"bytes": 21045,
|
||||
"sha256": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/input.json",
|
||||
"bytes": 759469,
|
||||
"sha256": "7f2403a6d4bd1dbff44f246bced74e810bf515f187f65c1a2dd3ef947c0445af"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-actual-independent-review-r278-r04.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-actual-independent-review-r278-r04.json",
|
||||
"bytes": 28145,
|
||||
"sha256": "671f15fa542465cf6a7e88ee272a2ce67049fffcca2483205f999cfeb2075253"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/actual-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/actual-root-verification.json",
|
||||
"bytes": 17143,
|
||||
"sha256": "00e01cce5240ebd3accddbfc88f8776ac4cd4dfa887df3b8ee319eb16c45913f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r282.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r282.json",
|
||||
"bytes": 43837,
|
||||
"sha256": "b622368694390e214d7d74521cb515968380adadc821f87ca7c6432860e762bd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json",
|
||||
"bytes": 14529,
|
||||
"sha256": "40b90fe5086d1bb468f14418657b946fac11615b46cdf66de5f0ccac832a8457"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-root-verification-r282.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-root-verification-r282.json",
|
||||
"bytes": 8804,
|
||||
"sha256": "942874c4ab548fd8105ee3d1eba8b4b281a3b63a72b492a5a13f55b085037e77"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-independent-review-r280.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-independent-review-r280.json",
|
||||
"bytes": 15586,
|
||||
"sha256": "c25202cb2b17e74b7c097572b61c8d60f76e9b26074c637de116b29c48faf118"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-root-verification-r280.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-root-verification-r280.json",
|
||||
"bytes": 7214,
|
||||
"sha256": "7928ab71bf6ec7a03762b1ac1705557e7b9729880cec5df043937b266bb2ecdd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/baseline-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/baseline-guarded.gd",
|
||||
"bytes": 1514,
|
||||
"sha256": "6317fb73bb0bdd201958b5e3e15fbf9013c35a20a3bb4e05b442d17c79f5297f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/candidate-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/candidate-guarded.gd",
|
||||
"bytes": 1522,
|
||||
"sha256": "30584f572dc20412de593cd2014d45ff3b9b662620518f264df3f0f299c28b9e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/input.json",
|
||||
"bytes": 977724,
|
||||
"sha256": "50c614bbce88105a9266c55273418d21e77012d34c1e80b20114fba304cf7408"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-impact-whole-r293-r04.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-impact-whole-r293-r04.py",
|
||||
"bytes": 7465,
|
||||
"sha256": "2a7d2617c3825f9f1c3a05bf0ad1023654cbba591d848b4f2232f8562c23f8ba"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04.py",
|
||||
"bytes": 7697,
|
||||
"sha256": "00a127f686f40b60e9d11df30a56eef78e7ca1835bd104d1d45e7c9b7e632345"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd",
|
||||
"bytes": 1570,
|
||||
"sha256": "090cdce985eb128b903b66a27367d238337a89d79b2c0208576bb48a5744f986"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/whole.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/whole.gd",
|
||||
"bytes": 4444,
|
||||
"sha256": "66317ae90b82e8f8b8631c3458d29b2c7acaebfa5ffca449bb6f8e4b1cbc2d73"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd",
|
||||
"bytes": 1514,
|
||||
"sha256": "0cac8ecb9bd911619f8c9468dbd20353e7bef58989d5f27071bab0a4fc8a68aa"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd",
|
||||
"bytes": 1522,
|
||||
"sha256": "747d8ed2cc3fd7e7b336d762532a4c49a7dfea89ec284ee0d056d7dbd9aaa958"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-preexecution-independent-review-r293-r03.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-preexecution-independent-review-r293-r03.json",
|
||||
"bytes": 31377,
|
||||
"sha256": "194972287ee425a7cd029fd3b3bc38122130d048d49d26d6fb2fb9081f1ceb11"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/input.json",
|
||||
"bytes": 978430,
|
||||
"sha256": "d6c18c43360b052f76065c8c0cd655ef121ef296bb937126567fc8e7d957e033"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-preexecution-independent-review-r293-r04.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-preexecution-independent-review-r293-r04.json",
|
||||
"bytes": 34541,
|
||||
"sha256": "b667088a6de89ba057c5926b3e37fdb0f00cefe30687ea2aff10a96ffcdf92cd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-profile.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "6391dd2418e7282ac0450040c697b455a34779f79726ec422a231c516f5ea0b7"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-phase.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-phase.json",
|
||||
"bytes": 8374,
|
||||
"sha256": "b4e5647e2d5d79b2be67801cafd8c466160e0a59ce03a9d801f7bd310ab1a1fc"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/preexecution-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/preexecution-root-verification.json",
|
||||
"bytes": 20622,
|
||||
"sha256": "da46a44153c08b67d5d9b63c0de52102bd1ed5cdcfcb7425f75877b78809cbea"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-phase.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-phase.json",
|
||||
"bytes": 8354,
|
||||
"sha256": "7aa5ff0651adeb6cfd412567058cc9d7d1f9930fad1e14290edcd203e30abd4b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-profile.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "e118b37756b0daf9014dd7605be405dc2f518190cd6ad3b1760e2f6562302f04"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-phase.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-phase.json",
|
||||
"bytes": 8282,
|
||||
"sha256": "e59ca8f243e2cf1f12b98581ff286a1e025b606db57ee4c27c8e54a505a73424"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/execution.json",
|
||||
"bytes": 33451,
|
||||
"sha256": "44d6c26b797a99e7729d1eb77e725330b2b95bd643876eb41cd11237f2488848"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-profile.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "e6e259c9c7ae288fdb7ba8f8df55b0a0cb4ea9cc4babdabb0c2a15b78c5c0a03"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/stderr.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/ended.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/ended.json",
|
||||
"bytes": 1855,
|
||||
"sha256": "89ee6eaefec4836448c07ad8033e2bbd295367b6884ed3b4a423eabcf20da109"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/adapter-owned-cleanup.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log",
|
||||
"bytes": 13537,
|
||||
"sha256": "ef48541c6aea6a1daacc048b2470baa925299b4c444c7875417cb11cec6b4915"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/stdout.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/stdout.log",
|
||||
"bytes": 13687,
|
||||
"sha256": "dfef30b89cc0d21e04b8f6ce974f3b0c212584ec9f208495b42cc2ff3d41e114"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/started.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/started.json",
|
||||
"bytes": 2516,
|
||||
"sha256": "6adcea75876633b610c842a19b94bb12b9da44281e4301c18813bf27a2dd6511"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/process.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/process.json",
|
||||
"bytes": 6915,
|
||||
"sha256": "2fb4458b7380d72e560705aa9523b320da213071a5fa2662d46a4c12deb71181"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/outer-owned-finally.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "04ebf5bfa22777481df87737dd7f8321a97958a7720d90b7c8889a65be1123c8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/stderr.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/ended.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/ended.json",
|
||||
"bytes": 1851,
|
||||
"sha256": "a9d912791218563fd360b5656d51cd10cdb608b617d786ec25bbef0ab0984d67"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/adapter-owned-cleanup.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log",
|
||||
"bytes": 13533,
|
||||
"sha256": "1dbadf5efb9189dcc9d2a996d228e1d195cbc9b95da681cdd7a4eb95ca26c55a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/stdout.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/stdout.log",
|
||||
"bytes": 13683,
|
||||
"sha256": "028436928f4620d361044e55fa89650702e1910ff786c40fec41ff83adcb4840"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/started.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/started.json",
|
||||
"bytes": 2509,
|
||||
"sha256": "f12a91e4c521c07aa071c80579cd204b0bc8072a5d44efd632cc58adb58667d1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/process.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/process.json",
|
||||
"bytes": 6896,
|
||||
"sha256": "64d3885d994f8c6c66b4b9963f4cca51a471676c91d5867e71078262710c456b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/outer-owned-finally.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "49d26f5a2ca48688398c15a41ba8e546f9c1a8041cbf5faf9daa56f502038fb6"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-measurement/report.json",
|
||||
"bytes": 174,
|
||||
"sha256": "6773c73f91a862456d8dc53e46bec34d46de1618e5855e020fc07939f5a0a303"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/stderr.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/ended.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/ended.json",
|
||||
"bytes": 1826,
|
||||
"sha256": "cc072e93e24edd809a43de4c8501f0f1418c1d33eb9415ec8498456cac64aba5"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/adapter-owned-cleanup.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log",
|
||||
"bytes": 8880,
|
||||
"sha256": "ea91640b689a54d6a34d4dd81f6c17595b3a5ff239ad1619ed3c39b90889d5af"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/stdout.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/stdout.log",
|
||||
"bytes": 9030,
|
||||
"sha256": "2e40058d73d4da048089a0b8aa12d0cb4e1fe6add7b19d3a5278d174d1a860f2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/started.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/started.json",
|
||||
"bytes": 2473,
|
||||
"sha256": "aa7bf3d322e2021f7e7d430695cf68bc88be567906a3482ab1d04bb7e01cc94b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/process.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/process.json",
|
||||
"bytes": 6830,
|
||||
"sha256": "fd0d08747da882ef817a226bb0f7d73664dff328df6837fddab9e5cd4316beb9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/outer-owned-finally.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "e40b70c89e35235bd09d79db140c1e5383d67a256ff4b8628ed1ef14adee9480"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/report.json",
|
||||
"bytes": 1312,
|
||||
"sha256": "16426c8a77ec67c92c89fffeeda830ed109de20f7bae24327aa22aa23d8b7de0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/after647.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/report.json",
|
||||
"bytes": 1315,
|
||||
"sha256": "67029363011fca74d6044fcf2235f86c6e6a681e91c67d20fe1e7e2c638341af"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/after647.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-actual-independent-review-r238.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-actual-independent-review-r238.json",
|
||||
"bytes": 36734,
|
||||
"sha256": "e41634755f116006c91ad251b48eb8b71286a53a6a687d6f371366f3140cc66d"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-r238/r233-measurement/after647.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-r238/r233-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
}
|
||||
},
|
||||
"canonical_doc4_context_pins": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
},
|
||||
"archival_before_pins": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492167,
|
||||
"sha256": "f0a719c77547db888e52bd09be53313a97118d19d46a8948599fef5694716aef"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410231,
|
||||
"sha256": "674b882256016af3d7072d32a0bdd13f5e0ce2aa374694c37442354d224d8758"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/work_packages.json",
|
||||
"bytes": 1175313,
|
||||
"sha256": "5441490631fbe73baebc95029a75af50ccb71a8962a5b913a710b6763a8ee763"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/progress_snapshot.json",
|
||||
"bytes": 521884,
|
||||
"sha256": "8fd37b051cd48d55bde8dda2947f59918d1c8dbe37831e15951b1324e5218c3d"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 491600,
|
||||
"sha256": "b9c3e8ed33905f217afd1e5d80bb406a0cdb84a38ae9f77d604caac5be1e3df3"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 409664,
|
||||
"sha256": "d31d96e0ece5db7731cc26004dd006e156b2c6724ba4070267a34c0d9d6a77b2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/work_packages.json",
|
||||
"bytes": 1171359,
|
||||
"sha256": "ff213501d783d63a2cdaed9a19d2171ee00e8af3603a24ccad6a38372393b999"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/progress_snapshot.json",
|
||||
"bytes": 516395,
|
||||
"sha256": "c9a96907d79c80fe469635dbfac26f5b4d6995c56a9c8f90e14ed9e80912ef6e"
|
||||
}
|
||||
},
|
||||
"phase_observations": [
|
||||
{
|
||||
"mode": "s6",
|
||||
"pid": 37247,
|
||||
"checks": 24,
|
||||
"failures": 0,
|
||||
"ownedexit": 0,
|
||||
"strict_diagnostics": 0,
|
||||
"private_conditions": 5,
|
||||
"wall_seconds": 1.1961495419999997
|
||||
},
|
||||
{
|
||||
"mode": "baseline",
|
||||
"pid": 37274,
|
||||
"checks": 15,
|
||||
"failures": 0,
|
||||
"ownedexit": 0,
|
||||
"strict_diagnostics": 0,
|
||||
"private_conditions": 5,
|
||||
"wall_seconds": 5.824936083
|
||||
},
|
||||
{
|
||||
"mode": "candidate",
|
||||
"pid": 37318,
|
||||
"checks": 15,
|
||||
"failures": 0,
|
||||
"ownedexit": 0,
|
||||
"strict_diagnostics": 0,
|
||||
"private_conditions": 5,
|
||||
"wall_seconds": 5.645140834000001
|
||||
}
|
||||
],
|
||||
"typed_verification": {
|
||||
"independent_external_zstd_fullboth_equals_oracle": true,
|
||||
"outputs": [
|
||||
{
|
||||
"mode": "baseline",
|
||||
"raw_bytes": 11487732,
|
||||
"raw_sha256": "9df3c1b6f65dfd8be944cd5cab8c631f7533530dfef3820d9fa5d74a5b1ac30f",
|
||||
"compressed": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
"fulloracle_equal": true
|
||||
},
|
||||
{
|
||||
"mode": "candidate",
|
||||
"raw_bytes": 11487732,
|
||||
"raw_sha256": "9df3c1b6f65dfd8be944cd5cab8c631f7533530dfef3820d9fa5d74a5b1ac30f",
|
||||
"compressed": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
"fulloracle_equal": true
|
||||
}
|
||||
],
|
||||
"same_raw_codec_proof_reuse": {
|
||||
"proof_review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-actual-independent-review-r238.json",
|
||||
"bytes": 36734,
|
||||
"sha256": "e41634755f116006c91ad251b48eb8b71286a53a6a687d6f371366f3140cc66d"
|
||||
},
|
||||
"archive": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-r238/r233-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
"raw_bytes": 11487732,
|
||||
"raw_sha256": "9df3c1b6f65dfd8be944cd5cab8c631f7533530dfef3820d9fa5d74a5b1ac30f",
|
||||
"codec": {
|
||||
"nodes": 754415,
|
||||
"headers": {
|
||||
"27": 64197,
|
||||
"21": 264689,
|
||||
"2": 132474,
|
||||
"1": 52978,
|
||||
"65564": 14448,
|
||||
"4": 71350,
|
||||
"28": 4120,
|
||||
"10": 144673,
|
||||
"65538": 4,
|
||||
"6": 5332,
|
||||
"0": 150
|
||||
},
|
||||
"file_envelope_bytes": 0,
|
||||
"all_bytes_roundtrip": true
|
||||
},
|
||||
"applicability": "Both independently expanded outputs equal entire original oracle and same authenticated raw SHA; compressed bytes/SHA also equal proof archive. Reuse covers every typed partition and ordered byte. No repeated codec parse.",
|
||||
"additional_codec_parses": 0
|
||||
},
|
||||
"additional_large_codec_decode": 0
|
||||
},
|
||||
"timing_observation": {
|
||||
"baseline_us": 1214852,
|
||||
"candidate_us": 1217932,
|
||||
"difference_us": 3080,
|
||||
"ratio": 1.0025352882491037,
|
||||
"reduction_percent": -0.25352882491035944,
|
||||
"single_adjacent_pair": true,
|
||||
"stable_gain_supported": false,
|
||||
"stall_budget_met": false
|
||||
},
|
||||
"findings": [
|
||||
"OriginalS6/GameClock24 passed on new290/library291 before whole baseline274/library275 and newcandidate. SameBudget257 loadedhash conjunct and originalPath retained,all three owned fresh serial processes passed.",
|
||||
"Bothwhole15/0 outputs independentlyzstd-expanded everybyte exactly original11,487,732 oracle. Raw/compressed len/SHA identical to authenticated754415partition codecproof; reuse covers exact headers/order/type bytes only for this same raw. No deepdecode rerun.",
|
||||
"Actual registration/API guards identify newcodec method falsebaseline/truecandidate and sameguest_tree method. Marker is not an allrecordnative invocation count; support remains finite public output/state equality.",
|
||||
"Strict3 logs noerror/orphan/unclaimed,private5,actualstartend command/PID/PGID/parent matches,allownednormalexit0/cleanupforeign0. Source/default/current282/SUPPORT/sharedparent1299 originalsfresh. Budget/projectbyteexact restored. Output16MiBpostphase guard holds; no livepeak guarantee.",
|
||||
"Pair1214852→1217932us is +3080us (+0.25352882491035944%) longer in one exploratory observation. No stable slowdown,componentcause,gain,P95D10 or budget conclusion; both exceed50ms.",
|
||||
"No adoption follows from these finite passes. Preserving provenparent274/library275 as next modification baseline and declining newcodec adoption is a scope-consistent choice given no observed improvement and added implementation complexity, not proof of a universal performance regression. Oldlocal287 and293-r03 metadata refusal histories unchanged."
|
||||
],
|
||||
"stable_gain_supported": false,
|
||||
"stall_budget_met": false,
|
||||
"performance_accepted": false,
|
||||
"candidate_adopted": false,
|
||||
"unit_accepted": false,
|
||||
"remaining_unaccepted": [
|
||||
"Stable performance/50ms/P95D10/final172/Main/render/normalOS/realtime x3/Windows/adoption/unit remain unaccepted.",
|
||||
"General malformed/reentry/arbitraryownership domains not covered; no further timing repeat justified by this receipt."
|
||||
],
|
||||
"reviewer_execution": {
|
||||
"engine": 0,
|
||||
"compiler": 0,
|
||||
"tests": 0,
|
||||
"validator": 0,
|
||||
"author": 0,
|
||||
"new_agents": 0,
|
||||
"read_only_external_zstd": true,
|
||||
"additional_large_codec_decode": 0
|
||||
},
|
||||
"pin_counts": {
|
||||
"direct": 96,
|
||||
"current_doc4": 4,
|
||||
"archive": 8,
|
||||
"total": 108
|
||||
}
|
||||
}
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
# coding: utf-8
|
||||
from pathlib import Path
|
||||
import hashlib,importlib.util,json,os,shutil,subprocess,sys,uuid
|
||||
sys.dont_write_bytecode=True
|
||||
R=Path(__file__).resolve().parents[2];A=R/'artifacts/original-completion-2026-10-02';D=R/'docs/plans/original-completion-2026-10-02';O=A/'p23-02-native-integer-window-codec-impact-whole-r293-r04';NAMES=['IMPLEMENTATION_PLAN.md','PROGRESS_INTEGRATION.md','work_packages.json','progress_snapshot.json']
|
||||
def mod(name,p):
|
||||
s=importlib.util.spec_from_file_location(name,p);m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m
|
||||
def unpack(path):return subprocess.run(['/opt/homebrew/bin/zstd','-d','-q','-c',str(path)],check=True,capture_output=True,timeout=10).stdout
|
||||
def main():
|
||||
r=mod('r281',R/'tools/run_all_tests.py');outer=mod('owned270',r.SUPPORT/'owned_outer.py');plan=r.read(O/'input.json');fixed=plan['pins'];assert not (O/'execution.json').exists()
|
||||
source=r.source_refs(R);player=r.default_player(R);docs={n:r.sha(D/n) for n in NAMES};assert source==plan['source_before'] and player==plan['default_before'] and docs==plan['doc4_before']
|
||||
prepath=A/'p23-02-native-integer-window-codec-impact-whole-preexecution-independent-review-r293-r04.json';pre=r.read(prepath);assert pre['execution_allowed'] and not pre['blockers']
|
||||
for group in ['evidence_sha256','canonical_doc4_context_pins']:
|
||||
for key,q in pre[group].items():
|
||||
f=Path(q.get('path',key));assert f.stat().st_size==q['bytes'] and r.sha(f)==q['sha256']
|
||||
root=r.read(O/'preexecution-root-verification.json');assert root['passed'] and root['review_sha256']==r.sha(prepath)
|
||||
assert r.read(fixed['local_review']['path'])['finite_local_equivalence_accepted']
|
||||
auditpath=A/'p23-02-native-provider-fallback-static-independent-review-r280.json';audit=r.read(auditpath);assert audit['builtin_synchronous_fallback_supported'] and not audit['blockers']
|
||||
auditroot=r.read(A/'p23-02-native-provider-fallback-static-root-verification-r280.json');assert auditroot['passed'] and auditroot['review_sha256']==r.sha(auditpath)
|
||||
stage=Path(plan['stage']);parent=Path(plan['parent']);budget=stage/'scripts/core/performance_budget.gd';original=budget.read_bytes();modified=Path(fixed['modified_budget']['path']).read_bytes();public=(stage/'project.godot').read_bytes();patched=False
|
||||
assert hashlib.sha256(original).hexdigest()==plan['original_budget_sha256']
|
||||
def protect():
|
||||
assert r.source_refs(R)==source and r.default_player(R)==player and {n:r.sha(D/n) for n in NAMES}==docs and r.inventory(r.SUPPORT)==plan['support_inventory']
|
||||
assert r.inventory(parent,stage=True)==plan['expected_stage'] and r.inventory(stage,stage=True)==(plan['patched_stage'] if patched else plan['expected_stage'])
|
||||
for key,q in fixed.items():
|
||||
f=Path(q['path']);assert f.stat().st_size==q['bytes'] and r.sha(f)==q['sha256'],key
|
||||
protect();oracle=unpack(fixed['oracle']['path']);assert len(oracle)==11487732 and hashlib.sha256(oracle).hexdigest()=='9df3c1b6f65dfd8be944cd5cab8c631f7533530dfef3820d9fa5d74a5b1ac30f'
|
||||
phases=[];samples=[];error=None;cleanup=[];cleanup_errors=[]
|
||||
try:
|
||||
for mode in ['s6','baseline','candidate']:
|
||||
protect();assert not outer.native.helper['live_engines']() and shutil.disk_usage(A).free>=plan['capacity_floor_bytes']
|
||||
budget.write_bytes(modified);patched=True
|
||||
protect();output=O/(mode+'-measurement');output.mkdir();ident=uuid.uuid4().hex;startup='TheTree-PCK-tests-'+ident+'-budget-startup';profile='TheTree-PCK-tests-'+ident+'-budget-runtime';assert not r.profile_path(startup).exists() and not r.profile_path(profile).exists()
|
||||
env=r.fresh_environment(os.environ);env.update(THE_TREE_PACK_PROFILE_NAME=profile,THE_TREE_PACK_PROFILE_EXPECTED=str(r.profile_path(profile)),THE_TREE_PACK_PROFILE_REPORT=str(O/(mode+'-profile.json')),THE_TREE_RUNTIME_MONITOR_OUTPUT=str(output),THE_TREE_REPLAY_SNAPSHOT=fixed['fixture']['path'],THE_TREE_CANDIDATE_ORACLE=fixed['oracle']['path'],THE_TREE_PAIRED_CANDIDATE=mode,THE_TREE_PAIRED_SAMPLE=mode,THE_TREE_EXPECTED_BUDGET_SHA=fixed['modified_budget']['sha256'],THE_TREE_EXPECTED_PATH_SHA=fixed['original_path']['sha256'])
|
||||
(stage/'project.godot').write_bytes(r.private_project(public,startup));phase=O/mode;argv=[fixed['engine']['path'],'--headless','--path',str(stage),'--script',fixed['starter_'+mode]['path'],'--verbose','--log-file',str(phase/'engine-native.log')]
|
||||
result,capture=outer.run_phase(argv,phase,90,env,now_fn=r.now,dump_fn=r.write,sha_fn=r.sha,live_engines_fn=outer.native.helper['live_engines']);row=dict(mode=mode,result=result,capture=capture);phases.append(row);r.write(O/(mode+'-phase.json'),row)
|
||||
rp=output/'report.json';report=r.read(rp) if rp.exists() else None
|
||||
if report is not None:samples.append(report)
|
||||
assert result and result['exit_code']==0 and not result['error_lines'] and not result['timed_out'] and capture['passed']
|
||||
logs=''.join((phase/n).read_text() for n in ['stdout.log','stderr.log','engine-native.log']);assert 'Orphan StringName:' not in logs and 'unclaimed string names' not in logs
|
||||
assert report and report['passed'] and not report['failures'] and report['pid']==result['pid']
|
||||
stdout=(phase/'stdout.log').read_text();assert stdout.count('NATIVE_ADAPTER_LIBRARY_REGISTERED')==1
|
||||
if mode=='s6':assert report['mode']==mode and report['checks']==24 and stdout.count('PASS: 24 checks')==1
|
||||
else:
|
||||
assert report['candidate']==mode and report['sample']==mode and report['checks']==15 and stdout.count('SDK whole647: 15 checks, 0 failures')==1
|
||||
ref=report['after647'];raw=unpack(ref['path']);assert raw==oracle and len(raw)==ref['uncompressed_bytes'] and hashlib.sha256(raw).hexdigest()==ref['uncompressed_sha256']
|
||||
r.profile_gate(r.profile_path(profile),O/(mode+'-profile.json'),profile);assert sum(f.stat().st_size for f in O.rglob('*') if f.is_file())<=16*1048576
|
||||
(stage/'project.godot').write_bytes(public);budget.write_bytes(original);patched=False;protect()
|
||||
except BaseException as caught:error=type(caught).__name__+': '+str(caught)
|
||||
finally:
|
||||
cleanup,cleanup_errors=outer.finish_captured(outer.OWNED)
|
||||
if all(q['engine_ended'] is True for q in cleanup):budget.write_bytes(original);patched=False;(stage/'project.godot').write_bytes(public)
|
||||
else:cleanup_errors.append('Budget/project restoration refused while owned child remains live')
|
||||
guard_errors=[]
|
||||
try:assert not patched and budget.read_bytes()==original;protect()
|
||||
except BaseException as caught:guard_errors.append(type(caught).__name__+': '+str(caught))
|
||||
pairs=[]
|
||||
if len(samples)==3:
|
||||
before=samples[1]['manual_tick_us'];after=samples[2]['manual_tick_us'];assert before>0 and after>=0;pairs=[dict(baseline_us=before,candidate_us=after,ratio=after/before,reduction_percent=(before-after)*100.0/before,scope='One adjacent cold paused speed1 headless observation only; no stable/P95/budget acceptance')]
|
||||
passed=error is None and not guard_errors and not cleanup_errors and len(phases)==3 and len(samples)==3
|
||||
r.write(O/'execution.json',dict(passed=passed,error=error,guard_errors=guard_errors,phases=phases,samples=samples,pairs=pairs,cleanup=cleanup,cleanup_errors=cleanup_errors,shared_Budget_restored_byteexact=not patched and budget.read_bytes()==original,input_source_default_doc4_preserved=not guard_errors,candidate_adopted=False,unit_accepted=False,performance_accepted=False,limitations=['Candidate original S6/GameClock impact first; only on pass baseline/candidate whole647 equality and one finite timing pair. No stable/P95/D10/50ms/final172/Main/render/OS/realtime x3/Windows/adoption/unit acceptance.']))
|
||||
print(json.dumps(dict(passed=passed,error=error,guard_errors=guard_errors,pairs=pairs)),flush=True);return 0 if passed else 1
|
||||
if __name__=='__main__':raise SystemExit(main())
|
||||
+548
@@ -0,0 +1,548 @@
|
||||
{
|
||||
"passed": true,
|
||||
"review_sha256": "147409de969918719f1682ff3bc537192a28d01837bfda6532ce4d1c292e9059",
|
||||
"verified_entries": [
|
||||
{
|
||||
"path": "/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"bytes": 351312912,
|
||||
"sha256": "c7cccbf8fb143e34e02fd6521e09be2c2b974f0d5db080b19071c9c570718ccf"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd",
|
||||
"bytes": 17582,
|
||||
"sha256": "92d5e1956f4e613e12555d756de4f71fef03678cde159ac68fac3188ce3f336e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py",
|
||||
"bytes": 26296,
|
||||
"sha256": "320ca668732b4ff72fc4449998af2327d4e5c527b06896740806aaf0487282b4"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd",
|
||||
"bytes": 2276,
|
||||
"sha256": "597696c705cc8f0e79a35265ca3ef8df55f7fc3c4e0e5a2ce9a4e20e29e29a6f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-walk-edges-candidate-r265-r03/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd",
|
||||
"bytes": 10355,
|
||||
"sha256": "742c464d16ab417cbc3c2930d43e508faf5c9f7688da416324ca1150bdb9b6b9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/world/path_service.gd",
|
||||
"bytes": 132925,
|
||||
"sha256": "6b7f4e989ea9b09495f814d8ecb294028d10794005966414bf52640e122b0d17"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-single-actor-path-native-r03/diagnostic-measurement/checkpoint646.varbytes.zst",
|
||||
"bytes": 240032,
|
||||
"sha256": "1a88f7ed27d1d32102c6fe3a9533221d2565191712ed15b631190479d1d41505"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-report-window-trusted-report-whole647-native-r02/diagnostic-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage/tests/s6/test_performance_budget.gd",
|
||||
"bytes": 3968,
|
||||
"sha256": "1ae5490637d73b519bf9ed0e00bda0e034d5ea0e589493bcf8886e4d1ff63689"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage/autoload/game_clock.gd",
|
||||
"bytes": 841,
|
||||
"sha256": "39400634a57ccbf8c584b54a15a259048a95da90b1528330151e45667d65f7f7"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-whole-pair-r253-r02/input.json",
|
||||
"bytes": 1205935,
|
||||
"sha256": "b116fd3e0dbad6b84594486dfaa531845e549482493a76dd7333a95dc760453b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cached-path-whole-pair-actual-independent-review-r253-r02.json",
|
||||
"bytes": 37005,
|
||||
"sha256": "f4c2b2c17da88ddf1f4f65bc2aacb53d5e5f062447df46e61bf724f7f3200d3c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-impact-whole-r262/input.json",
|
||||
"bytes": 972136,
|
||||
"sha256": "c8e7282ea7125c97eb8f8abe2914e7ecae28d76b368a042855a0ee11ccae68ba"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-impact-whole-actual-independent-review-r262.json",
|
||||
"bytes": 37515,
|
||||
"sha256": "530a10149df9138948f037937fda669f7f8d3b420a70260b4ecb5c4f96298782"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/candidate.gdextension",
|
||||
"bytes": 323,
|
||||
"sha256": "04c4311764ab9d75be3df884f960f0944cd474847fb1ca061224ce4c1bc2aef7"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/TheTree-pure-tags-r278-r04-72046c25b9384bcf8ea8ec91123462e1/candidate.dylib",
|
||||
"bytes": 367520,
|
||||
"sha256": "386d579d32b5660ccc1ed50d4c59f6a772a8360c7070241886354bfcade46cc0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/access.gdextension",
|
||||
"bytes": 331,
|
||||
"sha256": "a091aea5495a53bce3d02752f04dc18b7d53f834d3bac04c9d14379a7f06d260"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/TheTree-integer-window-local-r292-5f53aa2d1ea44e93bc03acf3114567b5/access.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-impact-whole-r293-r03.py",
|
||||
"bytes": 7035,
|
||||
"sha256": "c77591138353ff0515e109b81e623cab24f27c4cf330451b2c7abe9194cdda5f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03.py",
|
||||
"bytes": 7697,
|
||||
"sha256": "fd42990c765c62815726130bb43b3effd33272e776b24139471a4bc918bdba21"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/s6-guarded.gd",
|
||||
"bytes": 1570,
|
||||
"sha256": "090cdce985eb128b903b66a27367d238337a89d79b2c0208576bb48a5744f986"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/whole.gd",
|
||||
"bytes": 4444,
|
||||
"sha256": "7ac55231ff311024b6087ba123bf824ca72bab83172f06950e6235385a108fa3"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/whole.gd",
|
||||
"bytes": 4455,
|
||||
"sha256": "8af18e506a8cf859103c9d2a79f0d31f4d65f9f5d022f2848bbbb4ead21b9fc4"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281.py",
|
||||
"bytes": 7665,
|
||||
"sha256": "a2f907ff0b3abbefb9df0011d4304bc64169969bbf8324fdb04467c604f00d38"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/input.json",
|
||||
"bytes": 975133,
|
||||
"sha256": "cab7c33fad7f013628756bb968d78e0da57d712de3474c31287f4e93f91a21ad"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-actual-independent-review-r281.json",
|
||||
"bytes": 46359,
|
||||
"sha256": "1876c883e898fdfb8c1c4fb84ee5950930719d0e623b3f010fad0312402166b4"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-r281/actual-root-verification.json",
|
||||
"bytes": 28310,
|
||||
"sha256": "1d3d3a0d804d508e7daf11551c30997b0ef048660ceaafb814fd7e07104ae292"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/input.json",
|
||||
"bytes": 974387,
|
||||
"sha256": "99722da0e6a2745962da2bc0c58c99a26363e86eb549a3039b06674e15c594b1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"bytes": 40394,
|
||||
"sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"bytes": 21045,
|
||||
"sha256": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/input.json",
|
||||
"bytes": 759469,
|
||||
"sha256": "7f2403a6d4bd1dbff44f246bced74e810bf515f187f65c1a2dd3ef947c0445af"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-actual-independent-review-r278-r04.json",
|
||||
"bytes": 28145,
|
||||
"sha256": "671f15fa542465cf6a7e88ee272a2ce67049fffcca2483205f999cfeb2075253"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-r278-r04/actual-root-verification.json",
|
||||
"bytes": 17143,
|
||||
"sha256": "00e01cce5240ebd3accddbfc88f8776ac4cd4dfa887df3b8ee319eb16c45913f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r282.json",
|
||||
"bytes": 43837,
|
||||
"sha256": "b622368694390e214d7d74521cb515968380adadc821f87ca7c6432860e762bd"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json",
|
||||
"bytes": 14529,
|
||||
"sha256": "40b90fe5086d1bb468f14418657b946fac11615b46cdf66de5f0ccac832a8457"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-root-verification-r282.json",
|
||||
"bytes": 8804,
|
||||
"sha256": "942874c4ab548fd8105ee3d1eba8b4b281a3b63a72b492a5a13f55b085037e77"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-independent-review-r280.json",
|
||||
"bytes": 15586,
|
||||
"sha256": "c25202cb2b17e74b7c097572b61c8d60f76e9b26074c637de116b29c48faf118"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-provider-fallback-static-root-verification-r280.json",
|
||||
"bytes": 7214,
|
||||
"sha256": "7928ab71bf6ec7a03762b1ac1705557e7b9729880cec5df043937b266bb2ecdd"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/baseline-guarded.gd",
|
||||
"bytes": 1514,
|
||||
"sha256": "6317fb73bb0bdd201958b5e3e15fbf9013c35a20a3bb4e05b442d17c79f5297f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/candidate-guarded.gd",
|
||||
"bytes": 1522,
|
||||
"sha256": "30584f572dc20412de593cd2014d45ff3b9b662620518f264df3f0f299c28b9e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r03/input.json",
|
||||
"bytes": 977724,
|
||||
"sha256": "50c614bbce88105a9266c55273418d21e77012d34c1e80b20114fba304cf7408"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-impact-whole-r293-r04.py",
|
||||
"bytes": 7465,
|
||||
"sha256": "2a7d2617c3825f9f1c3a05bf0ad1023654cbba591d848b4f2232f8562c23f8ba"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04.py",
|
||||
"bytes": 7697,
|
||||
"sha256": "00a127f686f40b60e9d11df30a56eef78e7ca1835bd104d1d45e7c9b7e632345"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd",
|
||||
"bytes": 1570,
|
||||
"sha256": "090cdce985eb128b903b66a27367d238337a89d79b2c0208576bb48a5744f986"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/whole.gd",
|
||||
"bytes": 4444,
|
||||
"sha256": "66317ae90b82e8f8b8631c3458d29b2c7acaebfa5ffca449bb6f8e4b1cbc2d73"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd",
|
||||
"bytes": 1514,
|
||||
"sha256": "0cac8ecb9bd911619f8c9468dbd20353e7bef58989d5f27071bab0a4fc8a68aa"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd",
|
||||
"bytes": 1522,
|
||||
"sha256": "747d8ed2cc3fd7e7b336d762532a4c49a7dfea89ec284ee0d056d7dbd9aaa958"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-preexecution-independent-review-r293-r03.json",
|
||||
"bytes": 31377,
|
||||
"sha256": "194972287ee425a7cd029fd3b3bc38122130d048d49d26d6fb2fb9081f1ceb11"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/input.json",
|
||||
"bytes": 978430,
|
||||
"sha256": "d6c18c43360b052f76065c8c0cd655ef121ef296bb937126567fc8e7d957e033"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-preexecution-independent-review-r293-r04.json",
|
||||
"bytes": 34541,
|
||||
"sha256": "b667088a6de89ba057c5926b3e37fdb0f00cefe30687ea2aff10a96ffcdf92cd"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "6391dd2418e7282ac0450040c697b455a34779f79726ec422a231c516f5ea0b7"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-phase.json",
|
||||
"bytes": 8374,
|
||||
"sha256": "b4e5647e2d5d79b2be67801cafd8c466160e0a59ce03a9d801f7bd310ab1a1fc"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/preexecution-root-verification.json",
|
||||
"bytes": 20622,
|
||||
"sha256": "da46a44153c08b67d5d9b63c0de52102bd1ed5cdcfcb7425f75877b78809cbea"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-phase.json",
|
||||
"bytes": 8354,
|
||||
"sha256": "7aa5ff0651adeb6cfd412567058cc9d7d1f9930fad1e14290edcd203e30abd4b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "e118b37756b0daf9014dd7605be405dc2f518190cd6ad3b1760e2f6562302f04"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-phase.json",
|
||||
"bytes": 8282,
|
||||
"sha256": "e59ca8f243e2cf1f12b98581ff286a1e025b606db57ee4c27c8e54a505a73424"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/execution.json",
|
||||
"bytes": 33451,
|
||||
"sha256": "44d6c26b797a99e7729d1eb77e725330b2b95bd643876eb41cd11237f2488848"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "e6e259c9c7ae288fdb7ba8f8df55b0a0cb4ea9cc4babdabb0c2a15b78c5c0a03"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/ended.json",
|
||||
"bytes": 1855,
|
||||
"sha256": "89ee6eaefec4836448c07ad8033e2bbd295367b6884ed3b4a423eabcf20da109"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log",
|
||||
"bytes": 13537,
|
||||
"sha256": "ef48541c6aea6a1daacc048b2470baa925299b4c444c7875417cb11cec6b4915"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/stdout.log",
|
||||
"bytes": 13687,
|
||||
"sha256": "dfef30b89cc0d21e04b8f6ce974f3b0c212584ec9f208495b42cc2ff3d41e114"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/started.json",
|
||||
"bytes": 2516,
|
||||
"sha256": "6adcea75876633b610c842a19b94bb12b9da44281e4301c18813bf27a2dd6511"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/process.json",
|
||||
"bytes": 6915,
|
||||
"sha256": "2fb4458b7380d72e560705aa9523b320da213071a5fa2662d46a4c12deb71181"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "04ebf5bfa22777481df87737dd7f8321a97958a7720d90b7c8889a65be1123c8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/ended.json",
|
||||
"bytes": 1851,
|
||||
"sha256": "a9d912791218563fd360b5656d51cd10cdb608b617d786ec25bbef0ab0984d67"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log",
|
||||
"bytes": 13533,
|
||||
"sha256": "1dbadf5efb9189dcc9d2a996d228e1d195cbc9b95da681cdd7a4eb95ca26c55a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/stdout.log",
|
||||
"bytes": 13683,
|
||||
"sha256": "028436928f4620d361044e55fa89650702e1910ff786c40fec41ff83adcb4840"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/started.json",
|
||||
"bytes": 2509,
|
||||
"sha256": "f12a91e4c521c07aa071c80579cd204b0bc8072a5d44efd632cc58adb58667d1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/process.json",
|
||||
"bytes": 6896,
|
||||
"sha256": "64d3885d994f8c6c66b4b9963f4cca51a471676c91d5867e71078262710c456b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "49d26f5a2ca48688398c15a41ba8e546f9c1a8041cbf5faf9daa56f502038fb6"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-measurement/report.json",
|
||||
"bytes": 174,
|
||||
"sha256": "6773c73f91a862456d8dc53e46bec34d46de1618e5855e020fc07939f5a0a303"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/ended.json",
|
||||
"bytes": 1826,
|
||||
"sha256": "cc072e93e24edd809a43de4c8501f0f1418c1d33eb9415ec8498456cac64aba5"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log",
|
||||
"bytes": 8880,
|
||||
"sha256": "ea91640b689a54d6a34d4dd81f6c17595b3a5ff239ad1619ed3c39b90889d5af"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/stdout.log",
|
||||
"bytes": 9030,
|
||||
"sha256": "2e40058d73d4da048089a0b8aa12d0cb4e1fe6add7b19d3a5278d174d1a860f2"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/started.json",
|
||||
"bytes": 2473,
|
||||
"sha256": "aa7bf3d322e2021f7e7d430695cf68bc88be567906a3482ab1d04bb7e01cc94b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/process.json",
|
||||
"bytes": 6830,
|
||||
"sha256": "fd0d08747da882ef817a226bb0f7d73664dff328df6837fddab9e5cd4316beb9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "e40b70c89e35235bd09d79db140c1e5383d67a256ff4b8628ed1ef14adee9480"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/report.json",
|
||||
"bytes": 1312,
|
||||
"sha256": "16426c8a77ec67c92c89fffeeda830ed109de20f7bae24327aa22aa23d8b7de0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/report.json",
|
||||
"bytes": 1315,
|
||||
"sha256": "67029363011fca74d6044fcf2235f86c6e6a681e91c67d20fe1e7e2c638341af"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-actual-independent-review-r238.json",
|
||||
"bytes": 36734,
|
||||
"sha256": "e41634755f116006c91ad251b48eb8b71286a53a6a687d6f371366f3140cc66d"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-residual-diagnostic-r238/r233-measurement/after647.varbytes.zst",
|
||||
"bytes": 246720,
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492167,
|
||||
"sha256": "f0a719c77547db888e52bd09be53313a97118d19d46a8948599fef5694716aef"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410231,
|
||||
"sha256": "674b882256016af3d7072d32a0bdd13f5e0ce2aa374694c37442354d224d8758"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/work_packages.json",
|
||||
"bytes": 1175313,
|
||||
"sha256": "5441490631fbe73baebc95029a75af50ccb71a8962a5b913a710b6763a8ee763"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r282/before/progress_snapshot.json",
|
||||
"bytes": 521884,
|
||||
"sha256": "8fd37b051cd48d55bde8dda2947f59918d1c8dbe37831e15951b1324e5218c3d"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 491600,
|
||||
"sha256": "b9c3e8ed33905f217afd1e5d80bb406a0cdb84a38ae9f77d604caac5be1e3df3"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 409664,
|
||||
"sha256": "d31d96e0ece5db7731cc26004dd006e156b2c6724ba4070267a34c0d9d6a77b2"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/work_packages.json",
|
||||
"bytes": 1171359,
|
||||
"sha256": "ff213501d783d63a2cdaed9a19d2171ee00e8af3603a24ccad6a38372393b999"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r279/before/progress_snapshot.json",
|
||||
"bytes": 516395,
|
||||
"sha256": "c9a96907d79c80fe469635dbfac26f5b4d6995c56a9c8f90e14ed9e80912ef6e"
|
||||
}
|
||||
],
|
||||
"unit_accepted": false,
|
||||
"performance_accepted": false
|
||||
}
|
||||
+739
@@ -0,0 +1,739 @@
|
||||
{
|
||||
"passed": true,
|
||||
"error": null,
|
||||
"guard_errors": [],
|
||||
"phases": [
|
||||
{
|
||||
"mode": "s6",
|
||||
"result": {
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log"
|
||||
],
|
||||
"pid": 37247,
|
||||
"started_utc": "2026-10-11T23:14:54.216609+00:00",
|
||||
"ended_utc": "2026-10-11T23:14:55.413001+00:00",
|
||||
"wall_seconds": 1.1961495419999997,
|
||||
"exit_code": 0,
|
||||
"helper_exit_code": 0,
|
||||
"timed_out": false,
|
||||
"stdout_sha256": "2e40058d73d4da048089a0b8aa12d0cb4e1fe6add7b19d3a5278d174d1a860f2",
|
||||
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"error_lines": [],
|
||||
"owned_popen_ended": true,
|
||||
"old_helper_engine_ended": true,
|
||||
"start_receipt_written": true,
|
||||
"end_receipt_written": true,
|
||||
"lifecycle_error": null,
|
||||
"old_helper_lifecycle_error": null,
|
||||
"actual_start_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_STARTED",
|
||||
"actual_pid": 37247,
|
||||
"owner_pid": 37223,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 3362678250,
|
||||
"pid": 37247,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log"
|
||||
],
|
||||
"started_utc": "2026-10-11T23:14:54.216609+00:00",
|
||||
"current_process_identity": {
|
||||
"pid": 37247,
|
||||
"ppid": 37223,
|
||||
"pgid": 37247,
|
||||
"args": "/Applications/Godot.app/Contents/MacOS/Godot --headless --path /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage --script /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd --verbose --log-file /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log"
|
||||
},
|
||||
"live_identity_exact": true,
|
||||
"tracked_child_ended_before_initial_probe": false,
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"actual_end_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_ENDED",
|
||||
"actual_pid": 37247,
|
||||
"owner_pid": 37223,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 4551683500,
|
||||
"exit_code": 0,
|
||||
"actual_process_exit_code": 0,
|
||||
"engine_ended": true,
|
||||
"timed_out": false,
|
||||
"lifecycle_error": null,
|
||||
"start_receipt_written": true,
|
||||
"pid": 37247,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/s6/engine-native.log"
|
||||
],
|
||||
"ended_utc": "2026-10-11T23:14:55.410722+00:00",
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"strict_native_diagnostics": {
|
||||
"errors": [],
|
||||
"banner_count": 1,
|
||||
"known_unicode_diagnostic_count": 0,
|
||||
"unrecognized_unicode_diagnostic_count": 0,
|
||||
"exit_leak_diagnostic_lines": []
|
||||
},
|
||||
"external_process_or_group_signals": 0,
|
||||
"owned_child_process_helper_sha256": "c007e712c281573254faa1233c2ac92e100ab87393256a6dc096b35283e43037",
|
||||
"adapter_owned_cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"adapter_error": null,
|
||||
"old_helper_bytes_preserved": true,
|
||||
"helper_wait_None_maps_to_actual_timeout_seconds": 5,
|
||||
"explicit_helper_wait_timeouts_preserved": true,
|
||||
"additional_cleanup_wait_timeout_seconds": 5,
|
||||
"additional_cleanup_max_attempts": 3
|
||||
},
|
||||
"capture": {
|
||||
"actual_captured_pids": [
|
||||
37247
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"pid": 37247,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
}
|
||||
],
|
||||
"adapter_exception": null,
|
||||
"all_captured_ended": true,
|
||||
"outer_cleanup_errors": [],
|
||||
"foreign_process_or_group_signals": 0,
|
||||
"all_cleanup_before_outer_receipt": true,
|
||||
"outer_receipt_written": true,
|
||||
"outer_receipt_error": null,
|
||||
"passed": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "baseline",
|
||||
"result": {
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log"
|
||||
],
|
||||
"pid": 37274,
|
||||
"started_utc": "2026-10-11T23:14:57.542703+00:00",
|
||||
"ended_utc": "2026-10-11T23:15:03.367690+00:00",
|
||||
"wall_seconds": 5.824936083,
|
||||
"exit_code": 0,
|
||||
"helper_exit_code": 0,
|
||||
"timed_out": false,
|
||||
"stdout_sha256": "028436928f4620d361044e55fa89650702e1910ff786c40fec41ff83adcb4840",
|
||||
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"error_lines": [],
|
||||
"owned_popen_ended": true,
|
||||
"old_helper_engine_ended": true,
|
||||
"start_receipt_written": true,
|
||||
"end_receipt_written": true,
|
||||
"lifecycle_error": null,
|
||||
"old_helper_lifecycle_error": null,
|
||||
"actual_start_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_STARTED",
|
||||
"actual_pid": 37274,
|
||||
"owner_pid": 37223,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 6688445083,
|
||||
"pid": 37274,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log"
|
||||
],
|
||||
"started_utc": "2026-10-11T23:14:57.542703+00:00",
|
||||
"current_process_identity": {
|
||||
"pid": 37274,
|
||||
"ppid": 37223,
|
||||
"pgid": 37274,
|
||||
"args": "/Applications/Godot.app/Contents/MacOS/Godot --headless --path /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage --script /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd --verbose --log-file /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log"
|
||||
},
|
||||
"live_identity_exact": true,
|
||||
"tracked_child_ended_before_initial_probe": false,
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"actual_end_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_ENDED",
|
||||
"actual_pid": 37274,
|
||||
"owner_pid": 37223,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 12505850375,
|
||||
"exit_code": 0,
|
||||
"actual_process_exit_code": 0,
|
||||
"engine_ended": true,
|
||||
"timed_out": false,
|
||||
"lifecycle_error": null,
|
||||
"start_receipt_written": true,
|
||||
"pid": 37274,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline/engine-native.log"
|
||||
],
|
||||
"ended_utc": "2026-10-11T23:15:03.364971+00:00",
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"strict_native_diagnostics": {
|
||||
"errors": [],
|
||||
"banner_count": 1,
|
||||
"known_unicode_diagnostic_count": 0,
|
||||
"unrecognized_unicode_diagnostic_count": 0,
|
||||
"exit_leak_diagnostic_lines": []
|
||||
},
|
||||
"external_process_or_group_signals": 0,
|
||||
"owned_child_process_helper_sha256": "c007e712c281573254faa1233c2ac92e100ab87393256a6dc096b35283e43037",
|
||||
"adapter_owned_cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"adapter_error": null,
|
||||
"old_helper_bytes_preserved": true,
|
||||
"helper_wait_None_maps_to_actual_timeout_seconds": 5,
|
||||
"explicit_helper_wait_timeouts_preserved": true,
|
||||
"additional_cleanup_wait_timeout_seconds": 5,
|
||||
"additional_cleanup_max_attempts": 3
|
||||
},
|
||||
"capture": {
|
||||
"actual_captured_pids": [
|
||||
37274
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"pid": 37274,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
}
|
||||
],
|
||||
"adapter_exception": null,
|
||||
"all_captured_ended": true,
|
||||
"outer_cleanup_errors": [],
|
||||
"foreign_process_or_group_signals": 0,
|
||||
"all_cleanup_before_outer_receipt": true,
|
||||
"outer_receipt_written": true,
|
||||
"outer_receipt_error": null,
|
||||
"passed": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "candidate",
|
||||
"result": {
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log"
|
||||
],
|
||||
"pid": 37318,
|
||||
"started_utc": "2026-10-11T23:15:05.567145+00:00",
|
||||
"ended_utc": "2026-10-11T23:15:11.212338+00:00",
|
||||
"wall_seconds": 5.645140834000001,
|
||||
"exit_code": 0,
|
||||
"helper_exit_code": 0,
|
||||
"timed_out": false,
|
||||
"stdout_sha256": "dfef30b89cc0d21e04b8f6ce974f3b0c212584ec9f208495b42cc2ff3d41e114",
|
||||
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"error_lines": [],
|
||||
"owned_popen_ended": true,
|
||||
"old_helper_engine_ended": true,
|
||||
"start_receipt_written": true,
|
||||
"end_receipt_written": true,
|
||||
"lifecycle_error": null,
|
||||
"old_helper_lifecycle_error": null,
|
||||
"actual_start_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_STARTED",
|
||||
"actual_pid": 37318,
|
||||
"owner_pid": 37223,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 14712584541,
|
||||
"pid": 37318,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log"
|
||||
],
|
||||
"started_utc": "2026-10-11T23:15:05.567145+00:00",
|
||||
"current_process_identity": {
|
||||
"pid": 37318,
|
||||
"ppid": 37223,
|
||||
"pgid": 37318,
|
||||
"args": "/Applications/Godot.app/Contents/MacOS/Godot --headless --path /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage --script /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd --verbose --log-file /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log"
|
||||
},
|
||||
"live_identity_exact": true,
|
||||
"tracked_child_ended_before_initial_probe": false,
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"actual_end_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_ENDED",
|
||||
"actual_pid": 37318,
|
||||
"owner_pid": 37223,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 20351270708,
|
||||
"exit_code": 0,
|
||||
"actual_process_exit_code": 0,
|
||||
"engine_ended": true,
|
||||
"timed_out": false,
|
||||
"lifecycle_error": null,
|
||||
"start_receipt_written": true,
|
||||
"pid": 37318,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate/engine-native.log"
|
||||
],
|
||||
"ended_utc": "2026-10-11T23:15:11.210427+00:00",
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"strict_native_diagnostics": {
|
||||
"errors": [],
|
||||
"banner_count": 1,
|
||||
"known_unicode_diagnostic_count": 0,
|
||||
"unrecognized_unicode_diagnostic_count": 0,
|
||||
"exit_leak_diagnostic_lines": []
|
||||
},
|
||||
"external_process_or_group_signals": 0,
|
||||
"owned_child_process_helper_sha256": "c007e712c281573254faa1233c2ac92e100ab87393256a6dc096b35283e43037",
|
||||
"adapter_owned_cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"adapter_error": null,
|
||||
"old_helper_bytes_preserved": true,
|
||||
"helper_wait_None_maps_to_actual_timeout_seconds": 5,
|
||||
"explicit_helper_wait_timeouts_preserved": true,
|
||||
"additional_cleanup_wait_timeout_seconds": 5,
|
||||
"additional_cleanup_max_attempts": 3
|
||||
},
|
||||
"capture": {
|
||||
"actual_captured_pids": [
|
||||
37318
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"pid": 37318,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
}
|
||||
],
|
||||
"adapter_exception": null,
|
||||
"all_captured_ended": true,
|
||||
"outer_cleanup_errors": [],
|
||||
"foreign_process_or_group_signals": 0,
|
||||
"all_cleanup_before_outer_receipt": true,
|
||||
"outer_receipt_written": true,
|
||||
"outer_receipt_error": null,
|
||||
"passed": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"samples": [
|
||||
{
|
||||
"checks": 24,
|
||||
"failures": 0,
|
||||
"mode": "s6",
|
||||
"original_s6_test_unchanged": true,
|
||||
"passed": true,
|
||||
"performance_accepted": false,
|
||||
"pid": 37247,
|
||||
"unit_accepted": false
|
||||
},
|
||||
{
|
||||
"Windows_accepted": false,
|
||||
"after647": {
|
||||
"bytes": 246720,
|
||||
"codec": "zstd",
|
||||
"field_deletions": 0,
|
||||
"file_envelope": false,
|
||||
"full_bytes_roundtrip": true,
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/baseline-measurement/after647.varbytes.zst",
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880",
|
||||
"uncompressed_bytes": 11487732,
|
||||
"uncompressed_sha256": "9df3c1b6f65dfd8be944cd5cab8c631f7533530dfef3820d9fa5d74a5b1ac30f"
|
||||
},
|
||||
"cache_hits": 0,
|
||||
"cache_misses": 9311,
|
||||
"candidate": "baseline",
|
||||
"candidate_adopted": false,
|
||||
"checks": 15,
|
||||
"failures": [],
|
||||
"limits": [
|
||||
"One sample from an adjacent baseline r274/library275 versus integer codec r290/library291 pair; fixed cold restored646. Only exploratory pair observation, no stable speedup, percentile or budget acceptance.",
|
||||
"No Main, rendering, OS input or realtime x3. Timed interval contains builtin production callbacks; snapshot verification and compression occur after timing."
|
||||
],
|
||||
"manual_tick_us": 1214852,
|
||||
"normal_OS_accepted": false,
|
||||
"passed": true,
|
||||
"performance_budget_accepted": false,
|
||||
"pid": 37274,
|
||||
"plan_id": "P23-02",
|
||||
"sample": "baseline",
|
||||
"unit_accepted": false
|
||||
},
|
||||
{
|
||||
"Windows_accepted": false,
|
||||
"after647": {
|
||||
"bytes": 246720,
|
||||
"codec": "zstd",
|
||||
"field_deletions": 0,
|
||||
"file_envelope": false,
|
||||
"full_bytes_roundtrip": true,
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/candidate-measurement/after647.varbytes.zst",
|
||||
"sha256": "684ba40e9f649b7dd4bfc620185d7cd18bae3111c3b4038e48aaad5a9168d880",
|
||||
"uncompressed_bytes": 11487732,
|
||||
"uncompressed_sha256": "9df3c1b6f65dfd8be944cd5cab8c631f7533530dfef3820d9fa5d74a5b1ac30f"
|
||||
},
|
||||
"cache_hits": 0,
|
||||
"cache_misses": 9311,
|
||||
"candidate": "candidate",
|
||||
"candidate_adopted": false,
|
||||
"checks": 15,
|
||||
"failures": [],
|
||||
"limits": [
|
||||
"One sample from an adjacent baseline r274/library275 versus integer codec r290/library291 pair; fixed cold restored646. Only exploratory pair observation, no stable speedup, percentile or budget acceptance.",
|
||||
"No Main, rendering, OS input or realtime x3. Timed interval contains builtin production callbacks; snapshot verification and compression occur after timing."
|
||||
],
|
||||
"manual_tick_us": 1217932,
|
||||
"normal_OS_accepted": false,
|
||||
"passed": true,
|
||||
"performance_budget_accepted": false,
|
||||
"pid": 37318,
|
||||
"plan_id": "P23-02",
|
||||
"sample": "candidate",
|
||||
"unit_accepted": false
|
||||
}
|
||||
],
|
||||
"pairs": [
|
||||
{
|
||||
"baseline_us": 1214852,
|
||||
"candidate_us": 1217932,
|
||||
"ratio": 1.0025352882491037,
|
||||
"reduction_percent": -0.25352882491035944,
|
||||
"scope": "One adjacent cold paused speed1 headless observation only; no stable/P95/budget acceptance"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"pid": 37247,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
},
|
||||
{
|
||||
"pid": 37274,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
},
|
||||
{
|
||||
"pid": 37318,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
}
|
||||
],
|
||||
"cleanup_errors": [],
|
||||
"shared_Budget_restored_byteexact": true,
|
||||
"input_source_default_doc4_preserved": true,
|
||||
"candidate_adopted": false,
|
||||
"unit_accepted": false,
|
||||
"performance_accepted": false,
|
||||
"limitations": [
|
||||
"Candidate original S6/GameClock impact first; only on pass baseline/candidate whole647 equality and one finite timing pair. No stable/P95/D10/50ms/final172/Main/render/OS/realtime x3/Windows/adoption/unit acceptance."
|
||||
]
|
||||
}
|
||||
BIN
Binary file not shown.
+38
@@ -0,0 +1,38 @@
|
||||
extends "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd"
|
||||
# One sample of an adjacent r274/library275 versus r290/library291 pair. Only the synchronous tick is timed.
|
||||
func run() -> void:
|
||||
output = OS.get_environment("THE_TREE_RUNTIME_MONITOR_OUTPUT")
|
||||
var input_path := OS.get_environment("THE_TREE_REPLAY_SNAPSHOT")
|
||||
var candidate := OS.get_environment("THE_TREE_PAIRED_CANDIDATE")
|
||||
if not output.is_absolute_path() or not input_path.is_absolute_path() or candidate not in ["baseline","candidate"]: quit(98); return
|
||||
var original := FileAccess.get_file_as_bytes(input_path).decompress(11411840, FileAccess.COMPRESSION_ZSTD)
|
||||
var initial: Dictionary = bytes_to_var(original)
|
||||
runtime = root.get_node("SimulationRuntime")
|
||||
clock = root.get_node("GameClock")
|
||||
runtime.initialize(clock, root.get_node("GameState"), int(initial[&"systems"][&"runtime"][&"world_seed"]))
|
||||
check(runtime.restore_snapshot(initial), "fixed646 public restore")
|
||||
check(var_to_bytes(runtime.create_snapshot()) == original, "complete input bytes identical")
|
||||
check(clock.absolute_minute == 646 and clock.paused and clock.speed == 1, "same paused646 speed1")
|
||||
var path_listeners: Array = runtime.path_service.get_signal_connection_list(&"path_query_measured")
|
||||
check(path_listeners.size() == 1 and path_listeners[0]["callable"] == Callable(runtime, "_on_path_query_measured") and int(path_listeners[0]["flags"]) == 0, "only builtin path listener")
|
||||
check(clock.performance_budget.get_signal_connection_list(&"budget_exceeded").is_empty(), "no external budget listener")
|
||||
check(clock.get_signal_connection_list(&"tick_phase_started").is_empty() and clock.get_signal_connection_list(&"tick_completed").is_empty(), "no phase or completion instrumentation")
|
||||
check(runtime.path_service.cache_hits == 0 and runtime.path_service.cache_misses == 0 and runtime.path_service.cached_path_count() == 0, "same cold derived cache")
|
||||
check(runtime.path_service._query_batch.is_empty() and runtime.path_service._guest_tree_workspace.is_empty() and runtime.path_service._guest_step_connector_memo.is_empty(), "same cold tree/native-edge/step workspace")
|
||||
check(runtime._guest_access_batch_can_select(), "both candidates active fast guard")
|
||||
check(runtime.path_service.get_script().get_source_code().sha256_text() == OS.get_environment("THE_TREE_EXPECTED_PATH_SHA") and FileAccess.get_sha256("res://scripts/core/performance_budget.gd") == OS.get_environment("THE_TREE_EXPECTED_BUDGET_SHA"), "actual loaded original Path and same candidate Budget sources")
|
||||
var started := Time.get_ticks_usec()
|
||||
clock.advance_minutes(1)
|
||||
var elapsed := Time.get_ticks_usec() - started
|
||||
check(clock.absolute_minute == 647 and clock.paused, "tick returns at paused647")
|
||||
var after: Dictionary = runtime.create_snapshot()
|
||||
var oracle := FileAccess.get_file_as_bytes(OS.get_environment("THE_TREE_CANDIDATE_ORACLE")).decompress(11487732, FileAccess.COMPRESSION_ZSTD)
|
||||
check(var_to_bytes(after) == oracle, "complete after647 equals pinned r32 oracle")
|
||||
var after_pin := typed("after647", after)
|
||||
check(after_pin["uncompressed_sha256"] == "9df3c1b6f65dfd8be944cd5cab8c631f7533530dfef3820d9fa5d74a5b1ac30f", "complete output digest identical")
|
||||
var report := {"plan_id":"P23-02", "candidate":candidate, "sample":OS.get_environment("THE_TREE_PAIRED_SAMPLE"), "pid":OS.get_process_id(), "manual_tick_us":elapsed, "after647":after_pin, "cache_hits":runtime.path_service.cache_hits, "cache_misses":runtime.path_service.cache_misses, "checks":checks, "failures":failures, "passed":failures.is_empty(), "unit_accepted":false, "performance_budget_accepted":false, "normal_OS_accepted":false, "Windows_accepted":false, "candidate_adopted":false, "limits":["One sample from an adjacent baseline r274/library275 versus integer codec r290/library291 pair; fixed cold restored646. Only exploratory pair observation, no stable speedup, percentile or budget acceptance.", "No Main, rendering, OS input or realtime x3. Timed interval contains builtin production callbacks; snapshot verification and compression occur after timing."]}
|
||||
var file := FileAccess.open(output.path_join("report.json"), FileAccess.WRITE)
|
||||
if file == null: quit(98); return
|
||||
file.store_string(JSON.stringify(report, "\t")); file.close()
|
||||
print("SDK whole647: %d checks, %d failures" % [checks, failures.size()])
|
||||
quit(0 if failures.is_empty() else 1)
|
||||
+365
@@ -0,0 +1,365 @@
|
||||
{
|
||||
"review_id": "P23-02-native-integer-window-codec-local-actual-independent-review-r287",
|
||||
"reviewed_at": "2026-10-11T22:56:52.226119+00:00",
|
||||
"finite_local_equivalence_accepted": false,
|
||||
"codec_equivalence_accepted": false,
|
||||
"finite_exit_observation_accepted": false,
|
||||
"owned_termination_observed": true,
|
||||
"blockers": [
|
||||
{
|
||||
"id": "B1-codec-format-calibration-rejection",
|
||||
"detail": "All28 expected supported integer codec cases return no bytes, failing4 checks each (112total). Fiveunsupported cases retain false shape. encode_integer_window readiness/format calibration rejects; exact underlying mismatched calibration input/header/metadata is not exposed by current fixture, so rootcause remains unproven. Required repair must diagnose actual calibration without weakening expected enginebyte equality."
|
||||
}
|
||||
],
|
||||
"evidence_sha256": {
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot": {
|
||||
"path": "/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"bytes": 351312912,
|
||||
"sha256": "c7cccbf8fb143e34e02fd6521e09be2c2b974f0d5db080b19071c9c570718ccf"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd",
|
||||
"bytes": 17582,
|
||||
"sha256": "92d5e1956f4e613e12555d756de4f71fef03678cde159ac68fac3188ce3f336e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py",
|
||||
"bytes": 26296,
|
||||
"sha256": "320ca668732b4ff72fc4449998af2327d4e5c527b06896740806aaf0487282b4"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd",
|
||||
"bytes": 2276,
|
||||
"sha256": "597696c705cc8f0e79a35265ca3ef8df55f7fc3c4e0e5a2ce9a4e20e29e29a6f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd",
|
||||
"bytes": 10355,
|
||||
"sha256": "742c464d16ab417cbc3c2930d43e508faf5c9f7688da416324ca1150bdb9b6b9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287.gd",
|
||||
"bytes": 16884,
|
||||
"sha256": "95dfed0384166100e0ef7d02c18ddefa8063b24e2b5775762f3a20f4156ef44a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.gd",
|
||||
"bytes": 13359,
|
||||
"sha256": "9524ec12bf4b5dea78498abcb4d41ee5ef90d159d1d3b3fe15b3e46ad478ea2c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287.py",
|
||||
"bytes": 6972,
|
||||
"sha256": "24465fcfc422ac4c3f4e91b3b99f7c022c7a846122dcd895e3eb67979c7f3f0e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.py",
|
||||
"bytes": 6790,
|
||||
"sha256": "e44f30b961cc6798cb04c460ce1976cbb847180276de1fa937171d3b7b94228f"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-local-r287.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-local-r287.py",
|
||||
"bytes": 11417,
|
||||
"sha256": "11cd15266dd8111018102f2e7919e2be63adbcc4093da576e0f5a6e71d0e959f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-guarded.gd",
|
||||
"bytes": 1131,
|
||||
"sha256": "65bc1cdc639f4beea8310c1bab814a55b17b2db020cc9013e4c40794282f7b76"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r257-r04-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r257-r04-guarded.gd",
|
||||
"bytes": 1125,
|
||||
"sha256": "7984c076739c4db5c8e2c5516fd14cbd9641fbacfc6cb9a668495c1a9e566749"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/access.gdextension": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/access.gdextension",
|
||||
"bytes": 331,
|
||||
"sha256": "5db2862343f6da634a9c9d98c40a3a00115e7a54d68f73c4bfa10ff4766b5250"
|
||||
},
|
||||
"/private/tmp/TheTree-integer-window-local-r287-06a589be92994092b7b3c91a296a7ca4/access.dylib": {
|
||||
"path": "/private/tmp/TheTree-integer-window-local-r287-06a589be92994092b7b3c91a296a7ca4/access.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "1f2fb5b94fbbcb1917d1fba0f55943135f5cbf6aae5f80faf6d1e488bf38ffe6"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286/libtree_numeric_core.macos.template_debug.dylib": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "1f2fb5b94fbbcb1917d1fba0f55943135f5cbf6aae5f80faf6d1e488bf38ffe6"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r286.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r286.json",
|
||||
"bytes": 29934,
|
||||
"sha256": "939152f95590c753f016645ba09241977dd936a7dbb2d488ad923b0ed89ba5e6"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r286.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r286.json",
|
||||
"bytes": 17513,
|
||||
"sha256": "1d59bfa41b846870b503c10dc918ecf42c0a03e0f7dce3debe55f823c81c8a1b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r286/execution.json",
|
||||
"bytes": 7221,
|
||||
"sha256": "da0cc1f1440ffa5f4be1de384d8a78c034c653a2192f8721bccb9b6abf01e4b7"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json",
|
||||
"bytes": 10950,
|
||||
"sha256": "bffbdcb491ba0aa68eeac764228c04418d2ef3834624cb1fcb98db773e8369fd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r285-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r285-r02.json",
|
||||
"bytes": 4849,
|
||||
"sha256": "27b0b957737d79a3047f2b2a8fa936ac0ec368414d61bb6f097a524a3fd27ead"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/input.json",
|
||||
"bytes": 4325,
|
||||
"sha256": "38fb6adc0ec74c0f37631da3f1ddecf185879be9655574a920f1c12566beaa8f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp",
|
||||
"bytes": 59396,
|
||||
"sha256": "75bc2f659f62889fccac5990461f5b51e8b87f30ca0791e4a4c542d37a7c5236"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/report.json",
|
||||
"bytes": 1329,
|
||||
"sha256": "422b909b1e21929a1f704f5bf51c8312621cc3722d921bd966a50c7dd2a7cde0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/input.json",
|
||||
"bytes": 970092,
|
||||
"sha256": "d30d15d1b2c73a7c72af22379e63859e408bbdf62e617c5f4de2e74dd22bcab3"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/execution.json",
|
||||
"bytes": 22900,
|
||||
"sha256": "f5002356ba257300177d8c08535031563e7e016d5a7939c55b463858ed96d7d7"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-actual-independent-review-r260-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-actual-independent-review-r260-r02.json",
|
||||
"bytes": 29240,
|
||||
"sha256": "2766609c663f0bf408e994267a97265d511e52b61450567aa7939e2c4ab428c9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/actual-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/actual-root-verification.json",
|
||||
"bytes": 127,
|
||||
"sha256": "6c0fa00e031646bee0749db01146c0652b0fdda025dd4e878e1dcf24486f0a34"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/budget-local-fixtures.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/budget-local-fixtures.varbytes.zst",
|
||||
"bytes": 56731,
|
||||
"sha256": "0078bd09317815a8b6884ec459400b4e4ea77874291a57f782014fb7cdfcfb6a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r287.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r287.json",
|
||||
"bytes": 20073,
|
||||
"sha256": "5cab8f0592890851a6ca76057f4201520a739710ac90a4d882b37db699e856e2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/preexecution-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/preexecution-root-verification.json",
|
||||
"bytes": 11656,
|
||||
"sha256": "cf89833db92549acd52704597fdec41965a07105b471bcf1171d0acf4c294255"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-phase.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-phase.json",
|
||||
"bytes": 8228,
|
||||
"sha256": "698fa1536ad6bb43ef14ebfdd4695f90782f896d20064a7c5c15eda1680b3943"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-profile.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "9a99500f4f34ce6d9f00ea0aabbbcd34bfa8fdc5a6d0c631fee63ee6ef21e851"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/integer-codec-fixtures.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/integer-codec-fixtures.varbytes.zst",
|
||||
"bytes": 667,
|
||||
"sha256": "950cbca1f9689d60ee2f1fe2c6aec3df25d968eb4aa50b92ae830f49a6484e93"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json",
|
||||
"bytes": 10858,
|
||||
"sha256": "22e07864c1f7453c3eb38cb81e5bb189e48c9cbe2f31c507b75ce3c51c8174f5"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/budget-local-fixtures.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/budget-local-fixtures.varbytes.zst",
|
||||
"bytes": 56731,
|
||||
"sha256": "0078bd09317815a8b6884ec459400b4e4ea77874291a57f782014fb7cdfcfb6a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/stderr.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/ended.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/ended.json",
|
||||
"bytes": 1806,
|
||||
"sha256": "2b72d87bc2429841909c6290bce56f21a3214682edd73f6d6663f247e9afc21a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/adapter-owned-cleanup.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "8506c3a5cc13fab47748c0d9b207d3780bcc5a1f5932faadb8afd6118ccb6ddd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/engine-native.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/engine-native.log",
|
||||
"bytes": 18877,
|
||||
"sha256": "5ea4d9df1cc9398ce46a13c0a5ae69ab96731d1fb0774ac8830487ee0790a75d"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/stdout.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/stdout.log",
|
||||
"bytes": 19027,
|
||||
"sha256": "1c4c9b08317450334f5f83fa1c64119202884e16ca0e0b0819327871297a8757"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/started.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/started.json",
|
||||
"bytes": 2443,
|
||||
"sha256": "e7971821694515eed380c5a62016cb1bd3c7a7c52f09c372d484ebf29c06524e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/process.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/process.json",
|
||||
"bytes": 6770,
|
||||
"sha256": "2ae391628fa1e0f96280976bce1f68c2d9db2dd23357856255329c629366846f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/outer-owned-finally.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "0d8e736bd7da94b951b444576ab4df8b2e47b18687b8248233f3206d75f1825b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-ai-r03-typed-difference-independent-review-r01/finite_variant_codec.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-ai-r03-typed-difference-independent-review-r01/finite_variant_codec.py",
|
||||
"bytes": 5438,
|
||||
"sha256": "8c7077b53e28da4054bdf7dd88e82de02a51149269a8fce59bae0e74f95b4734"
|
||||
}
|
||||
},
|
||||
"canonical_doc4_context_pins": {
|
||||
"IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
"PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
"work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
"progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
},
|
||||
"archival_before_pins": {
|
||||
"original260r02_context259": {
|
||||
"IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 506091,
|
||||
"sha256": "e9d4829c66ee13cc4b8036051164abc5a1017f75f7604442fda995949d45d9cc"
|
||||
},
|
||||
"PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 424155,
|
||||
"sha256": "398fd8aa7085b423badf373fb85941206ddd9919b6792e35687e626940285bc2"
|
||||
},
|
||||
"work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/work_packages.json",
|
||||
"bytes": 1216866,
|
||||
"sha256": "bca396b5d19721c9cd2544004d7b391c290b1fc443a3e82fb8db13634b541a5c"
|
||||
},
|
||||
"progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/progress_snapshot.json",
|
||||
"bytes": 487066,
|
||||
"sha256": "380be5576f37c2da5aa9c33aee1d40fe86f431416f3604b302c97b79b65968cb"
|
||||
}
|
||||
}
|
||||
},
|
||||
"observations": {
|
||||
"owned_pid": 30353,
|
||||
"actual_exit_code": 1,
|
||||
"timed_out": false,
|
||||
"checks": 4024,
|
||||
"failures": 112,
|
||||
"strict_diagnostics": 0,
|
||||
"private_conditions": 5,
|
||||
"codec_rows": 33,
|
||||
"supported_expected_rows": 28,
|
||||
"supported_rows_with_missing_bytes": 28,
|
||||
"unsupported_rows": 5,
|
||||
"codec_raw_bytes": 64028,
|
||||
"codec_raw_sha256": "32c07a93a0850d2ed3d4c5e8f65608ad1753d1e2de3f53eb192a36c8d3133c79",
|
||||
"codec_partition_roundtrip": {
|
||||
"nodes": 247,
|
||||
"headers": {
|
||||
"28": 39,
|
||||
"4": 33,
|
||||
"1": 71,
|
||||
"2": 33,
|
||||
"29": 33,
|
||||
"0": 28,
|
||||
"27": 5,
|
||||
"21": 5
|
||||
},
|
||||
"file_envelope_bytes": 0,
|
||||
"all_bytes_roundtrip": true
|
||||
},
|
||||
"Budget_original_fixture_rows": 833,
|
||||
"Budget_fixture_raw_bytes": 6589288,
|
||||
"Budget_fixture_raw_sha256": "3e70b4bf232c6d8a9c4bddb97d813487805f155dd5a9e27900d9e84099c20c26",
|
||||
"Budget_fullbytes_equal_original260": true
|
||||
},
|
||||
"failure_classification": "Native codec readiness/calibration/support failure, not script parse/strict log/process protection failure. Whole run unaccepted; Budget oracle equality is preserved observation only and cannot establish new encoder execution because original fallback remains active.",
|
||||
"protection": {
|
||||
"Budget_project_restored": true,
|
||||
"source_default_doc282_support_shared_parent_fresh_equal": true,
|
||||
"shared_parent_inventory_each": 1299,
|
||||
"cleanup_errors": [],
|
||||
"foreign_signals": 0
|
||||
},
|
||||
"limits": [
|
||||
"No newlocal implementation/codec/ownership/generalreentry/whole/S6/performance/final172/OSWindows/adoption/unit acceptance.",
|
||||
"Exit1 is a successfully observed owned termination, not accepted successful validation exit.",
|
||||
"No inference about specific calibration byte mismatch without additional diagnostic evidence. Prior static/build support remains historical but does not override runtimefailure."
|
||||
],
|
||||
"reviewer_execution": {
|
||||
"engine": 0,
|
||||
"compiler": 0,
|
||||
"tests": 0,
|
||||
"validator": 0,
|
||||
"author": 0,
|
||||
"new_agents": 0,
|
||||
"existing_edits": 0,
|
||||
"largeBudget_deepdecode": 0,
|
||||
"smallCodec_readonly_decode": 1
|
||||
},
|
||||
"pin_counts": {
|
||||
"direct": 48,
|
||||
"current": 4,
|
||||
"archive": 4
|
||||
}
|
||||
}
|
||||
+568
@@ -0,0 +1,568 @@
|
||||
{
|
||||
"review_id": "p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02",
|
||||
"reviewed_at": "2026-10-11T23:09:57.098776+00:00",
|
||||
"finite_local_equivalence_accepted": true,
|
||||
"codec_equivalence_accepted": true,
|
||||
"native_load_accepted": true,
|
||||
"finite_exit_observation_accepted": true,
|
||||
"exit_accepted": true,
|
||||
"blockers": [],
|
||||
"evidence_sha256": {
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot": {
|
||||
"path": "/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"bytes": 351312912,
|
||||
"sha256": "c7cccbf8fb143e34e02fd6521e09be2c2b974f0d5db080b19071c9c570718ccf"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd",
|
||||
"bytes": 17582,
|
||||
"sha256": "92d5e1956f4e613e12555d756de4f71fef03678cde159ac68fac3188ce3f336e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py",
|
||||
"bytes": 26296,
|
||||
"sha256": "320ca668732b4ff72fc4449998af2327d4e5c527b06896740806aaf0487282b4"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd",
|
||||
"bytes": 2276,
|
||||
"sha256": "597696c705cc8f0e79a35265ca3ef8df55f7fc3c4e0e5a2ce9a4e20e29e29a6f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd",
|
||||
"bytes": 10355,
|
||||
"sha256": "742c464d16ab417cbc3c2930d43e508faf5c9f7688da416324ca1150bdb9b6b9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.gd",
|
||||
"bytes": 16880,
|
||||
"sha256": "6e29686f84db92ce977b7f1aedfdae81969626544facb0b0e6e7ca46634c0fb4"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.gd",
|
||||
"bytes": 13359,
|
||||
"sha256": "9524ec12bf4b5dea78498abcb4d41ee5ef90d159d1d3b3fe15b3e46ad478ea2c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.py",
|
||||
"bytes": 6976,
|
||||
"sha256": "ffeb4df73c14adc68baa88a32b486d0ba2805da3495d2fbe1801ba0b4ded4628"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.py",
|
||||
"bytes": 6790,
|
||||
"sha256": "e44f30b961cc6798cb04c460ce1976cbb847180276de1fa937171d3b7b94228f"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-local-r292-r02.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-local-r292-r02.py",
|
||||
"bytes": 12091,
|
||||
"sha256": "cfbfa415243a5af6588de3b400077e25640748f184a01d757fd684b66b999f18"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd",
|
||||
"bytes": 1139,
|
||||
"sha256": "e998db2bfe4da2140df3bacf0ef3365eb13e304eb99b9294de67ad6b37c906fd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r257-r04-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r257-r04-guarded.gd",
|
||||
"bytes": 1125,
|
||||
"sha256": "7984c076739c4db5c8e2c5516fd14cbd9641fbacfc6cb9a668495c1a9e566749"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/access.gdextension": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/access.gdextension",
|
||||
"bytes": 331,
|
||||
"sha256": "a091aea5495a53bce3d02752f04dc18b7d53f834d3bac04c9d14379a7f06d260"
|
||||
},
|
||||
"/private/tmp/TheTree-integer-window-local-r292-5f53aa2d1ea44e93bc03acf3114567b5/access.dylib": {
|
||||
"path": "/private/tmp/TheTree-integer-window-local-r292-5f53aa2d1ea44e93bc03acf3114567b5/access.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/execution.json",
|
||||
"bytes": 7210,
|
||||
"sha256": "ecacdcf050b7a77ecf3b356f75bbfbd089813f4b9744fd58f4631282b5898248"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/report.json",
|
||||
"bytes": 1329,
|
||||
"sha256": "422b909b1e21929a1f704f5bf51c8312621cc3722d921bd966a50c7dd2a7cde0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/input.json",
|
||||
"bytes": 970092,
|
||||
"sha256": "d30d15d1b2c73a7c72af22379e63859e408bbdf62e617c5f4de2e74dd22bcab3"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/execution.json",
|
||||
"bytes": 22900,
|
||||
"sha256": "f5002356ba257300177d8c08535031563e7e016d5a7939c55b463858ed96d7d7"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-actual-independent-review-r260-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-actual-independent-review-r260-r02.json",
|
||||
"bytes": 29240,
|
||||
"sha256": "2766609c663f0bf408e994267a97265d511e52b61450567aa7939e2c4ab428c9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/actual-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/actual-root-verification.json",
|
||||
"bytes": 127,
|
||||
"sha256": "6c0fa00e031646bee0749db01146c0652b0fdda025dd4e878e1dcf24486f0a34"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/budget-local-fixtures.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/budget-local-fixtures.varbytes.zst",
|
||||
"bytes": 56731,
|
||||
"sha256": "0078bd09317815a8b6884ec459400b4e4ea77874291a57f782014fb7cdfcfb6a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/actual-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/actual-root-verification.json",
|
||||
"bytes": 17087,
|
||||
"sha256": "8fc155e5a9ec9098429db93af59871d98b503616bb5ac32efc26bd8651e8cb33"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/input.json",
|
||||
"bytes": 973327,
|
||||
"sha256": "00005b7b8a289baaccb4a4bb9ae5df385607524f71b6c1dad6ac554961dbe508"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r292.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r292.json",
|
||||
"bytes": 21378,
|
||||
"sha256": "b2f9de6e72d6fa4ea4d9f855d461819eda1760c8e7edc387684c1fa181a89af1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/preexecution-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/preexecution-root-verification.json",
|
||||
"bytes": 11972,
|
||||
"sha256": "4679e98ac3da1ac61761046e4d3ac7f86da8f1417644ec3d61e414ef474143fc"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292.gd",
|
||||
"bytes": 16884,
|
||||
"sha256": "95dfed0384166100e0ef7d02c18ddefa8063b24e2b5775762f3a20f4156ef44a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292.py",
|
||||
"bytes": 6972,
|
||||
"sha256": "bd56bd53d79c992e21fe3599aa1800568820baecc7ec1520aa3916206da3f9bc"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-local-r292.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-local-r292.py",
|
||||
"bytes": 11790,
|
||||
"sha256": "acafa80cf9bda056f8012a9d6089ff2b7cde8826c60acf5e26a45fac74f6a7a9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/r257-r04-guarded.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/r257-r04-guarded.gd",
|
||||
"bytes": 1131,
|
||||
"sha256": "20323811de51d987176976eb6677e8c91d8cb9386f86aedfe4ea602b2969699f"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/access.gdextension": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/access.gdextension",
|
||||
"bytes": 331,
|
||||
"sha256": "a091aea5495a53bce3d02752f04dc18b7d53f834d3bac04c9d14379a7f06d260"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r287.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r287.json",
|
||||
"bytes": 20073,
|
||||
"sha256": "5cab8f0592890851a6ca76057f4201520a739710ac90a4d882b37db699e856e2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/input.json",
|
||||
"bytes": 974387,
|
||||
"sha256": "99722da0e6a2745962da2bc0c58c99a26363e86eb549a3039b06674e15c594b1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r292-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r292-r02.json",
|
||||
"bytes": 26634,
|
||||
"sha256": "cd2cb94325eaddbb861682020132890f1dc47af7a2db41651af622e331f16e0e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/preexecution-root-verification.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/preexecution-root-verification.json",
|
||||
"bytes": 15599,
|
||||
"sha256": "e99421447d7fb24c8b2134aaba9b6fe1390cbf0486643863adfa4f1a9fb44e8c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-phase.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-phase.json",
|
||||
"bytes": 8276,
|
||||
"sha256": "5a62866e8b576960be97c2fdb7d3d67c1ac37f1ba511dee6da66476a54d34f28"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-profile.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "d193ff945717bd35368bc28c69a4cd2fb965932c773edcd6961dcf37edb610d4"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/execution.json",
|
||||
"bytes": 12718,
|
||||
"sha256": "5a4b118df6940db957b1c0b788210816303aa5fcb1f4dc8a3a951afce1447929"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/integer-codec-fixtures.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/integer-codec-fixtures.varbytes.zst",
|
||||
"bytes": 788,
|
||||
"sha256": "c207dd047771686542d7ad79985445dd61b7b659d98e421db4261871b3056139"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/report.json",
|
||||
"bytes": 2029,
|
||||
"sha256": "c99eacdd44754dcdb57d840e24726810befd66fbbfbdef81c8ba52db0c4c1a00"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/budget-local-fixtures.varbytes.zst": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/budget-local-fixtures.varbytes.zst",
|
||||
"bytes": 56731,
|
||||
"sha256": "0078bd09317815a8b6884ec459400b4e4ea77874291a57f782014fb7cdfcfb6a"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/stderr.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/ended.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/ended.json",
|
||||
"bytes": 1822,
|
||||
"sha256": "ea4bb6d2e6fd4736a5a8d93bbd00e6dff9ceb8c380abcb203673eb706aa38d58"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/adapter-owned-cleanup.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log",
|
||||
"bytes": 7819,
|
||||
"sha256": "866552d409526421625b9566b7603e70b06f5b1fbbdbd9709c33b19ea3672e21"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/stdout.log": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/stdout.log",
|
||||
"bytes": 7969,
|
||||
"sha256": "90200123ba80aed7cb4b15032208b66948ba98b0e4da01eb1bc4240947fea914"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/started.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/started.json",
|
||||
"bytes": 2467,
|
||||
"sha256": "c75ea62d5d962802b1db7869939b15cefbc57ed99c0fe551c0d86dd584305720"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/process.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/process.json",
|
||||
"bytes": 6818,
|
||||
"sha256": "b94ad4e88ff502b6491f7b2b3bf04c1ddd884ef6c55e8d20d36d2f40ab357162"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/outer-owned-finally.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "b821a1350cd02d081d22e8a08adc471150d4b81dbf5c42b4251aa26fcb2797b2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-ai-r03-typed-difference-independent-review-r01/finite_variant_codec.py": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-ai-r03-typed-difference-independent-review-r01/finite_variant_codec.py",
|
||||
"bytes": 5438,
|
||||
"sha256": "8c7077b53e28da4054bdf7dd88e82de02a51149269a8fce59bae0e74f95b4734"
|
||||
}
|
||||
},
|
||||
"canonical_doc4_context_pins": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
},
|
||||
"archival_before_pins": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 506091,
|
||||
"sha256": "e9d4829c66ee13cc4b8036051164abc5a1017f75f7604442fda995949d45d9cc"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 424155,
|
||||
"sha256": "398fd8aa7085b423badf373fb85941206ddd9919b6792e35687e626940285bc2"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/work_packages.json",
|
||||
"bytes": 1216866,
|
||||
"sha256": "bca396b5d19721c9cd2544004d7b391c290b1fc443a3e82fb8db13634b541a5c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/progress_snapshot.json",
|
||||
"bytes": 487066,
|
||||
"sha256": "380be5576f37c2da5aa9c33aee1d40fe86f431416f3604b302c97b79b65968cb"
|
||||
}
|
||||
},
|
||||
"observations": {
|
||||
"pid": 34647,
|
||||
"checks": 4024,
|
||||
"failures": 0,
|
||||
"original_fixture_rows": 833,
|
||||
"record_calls": 753,
|
||||
"getter_calls": 66,
|
||||
"clear_calls": 6,
|
||||
"guard_calls": 8,
|
||||
"codec_cases": 33,
|
||||
"supported_integer_cases": 28,
|
||||
"unsupported_cases": 5,
|
||||
"codec_raw_bytes": 124964,
|
||||
"codec_raw_sha256": "8b840d9ef1ff8cb589697c864bedb7286a12ec2fb1ad3afc5f24c16a38f12111",
|
||||
"codec_outer_roundtrip": {
|
||||
"nodes": 247,
|
||||
"headers": {
|
||||
"28": 39,
|
||||
"4": 33,
|
||||
"1": 71,
|
||||
"2": 33,
|
||||
"29": 61,
|
||||
"27": 5,
|
||||
"21": 5
|
||||
},
|
||||
"file_envelope_bytes": 0,
|
||||
"all_bytes_roundtrip": true
|
||||
},
|
||||
"codec_inner_partition_nodes": 6231,
|
||||
"supported_codec_rows": [
|
||||
{
|
||||
"label": "codec/count0/typedfalse/readonlyfalse",
|
||||
"encoded_bytes": 8,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count0/typedfalse/readonlytrue",
|
||||
"encoded_bytes": 8,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count0/typedtrue/readonlyfalse",
|
||||
"encoded_bytes": 12,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count0/typedtrue/readonlytrue",
|
||||
"encoded_bytes": 12,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count1/typedfalse/readonlyfalse",
|
||||
"encoded_bytes": 20,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count1/typedfalse/readonlytrue",
|
||||
"encoded_bytes": 20,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count1/typedtrue/readonlyfalse",
|
||||
"encoded_bytes": 24,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count1/typedtrue/readonlytrue",
|
||||
"encoded_bytes": 24,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count2/typedfalse/readonlyfalse",
|
||||
"encoded_bytes": 32,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count2/typedfalse/readonlytrue",
|
||||
"encoded_bytes": 32,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count2/typedtrue/readonlyfalse",
|
||||
"encoded_bytes": 36,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count2/typedtrue/readonlytrue",
|
||||
"encoded_bytes": 36,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count9/typedfalse/readonlyfalse",
|
||||
"encoded_bytes": 96,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count9/typedfalse/readonlytrue",
|
||||
"encoded_bytes": 96,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count9/typedtrue/readonlyfalse",
|
||||
"encoded_bytes": 100,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count9/typedtrue/readonlytrue",
|
||||
"encoded_bytes": 100,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count511/typedfalse/readonlyfalse",
|
||||
"encoded_bytes": 5000,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count511/typedfalse/readonlytrue",
|
||||
"encoded_bytes": 5000,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count511/typedtrue/readonlyfalse",
|
||||
"encoded_bytes": 5004,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count511/typedtrue/readonlytrue",
|
||||
"encoded_bytes": 5004,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count512/typedfalse/readonlyfalse",
|
||||
"encoded_bytes": 5012,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count512/typedfalse/readonlytrue",
|
||||
"encoded_bytes": 5012,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count512/typedtrue/readonlyfalse",
|
||||
"encoded_bytes": 5016,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count512/typedtrue/readonlytrue",
|
||||
"encoded_bytes": 5016,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count513/typedfalse/readonlyfalse",
|
||||
"encoded_bytes": 5024,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count513/typedfalse/readonlytrue",
|
||||
"encoded_bytes": 5024,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count513/typedtrue/readonlyfalse",
|
||||
"encoded_bytes": 5028,
|
||||
"exact_engine_bytes": true
|
||||
},
|
||||
{
|
||||
"label": "codec/count513/typedtrue/readonlytrue",
|
||||
"encoded_bytes": 5028,
|
||||
"exact_engine_bytes": true
|
||||
}
|
||||
],
|
||||
"budget_raw_bytes": 6589288,
|
||||
"budget_raw_sha256": "3e70b4bf232c6d8a9c4bddb97d813487805f155dd5a9e27900d9e84099c20c26",
|
||||
"budget_full_raw_equals_original260": true,
|
||||
"output_bytes": 1101120
|
||||
},
|
||||
"findings": [
|
||||
"New r290/library291 loaded in one finite owned PID34647. All28 supported outputs demonstrate codec readiness in this call sequence; registration marker alone is not all-record native invocation count.",
|
||||
"Independent external zstd full expansions checked lengths/SHA. Complete33 codec rows roundtrip247nodes;28 native byte payloads equal engine var_to_bytes and independently decode original INT boundaries,typed metadata and sequence. Five unsupported singleton StringName supported=false rows confirmed.",
|
||||
"Actual passing codec assertions include unchanged typed/read-only/source bytes and returned Dictionary/PackedByteArray mutation isolation. Records retain expected and repeated native bytes; ownership support is finite mutation assertions, not an independent pointer alias trace.",
|
||||
"Original833 Budget serialized rows equal accepted original260 r239/240 oracle full6589288 bytes. Same compressed/raw hashes allow reuse of prior exact typed proof, no redundant large decode. Listed raw/order/bytes alias mutation/report/clear/signed/signalcopy and reentrant fixtures only; guard-only malformed/read-only states do not accept original error paths.",
|
||||
"Owned normalexit0,strict3 diagnostics0,orphan/unclaimednone,private five runtime conditions and allcleanupended observed. Runtime private profile path is confirmed by guard receipt; no filesystem directory existence is assumed when no persistent profile writes occur.",
|
||||
"Budget/project restoredoriginal;both1299-entry stages,SUPPORT,source/default/current282 and allfixed refs fresh. Historical259 context remains C261before. Old287112failures and292 metadata refusal preserved, not reclassified."
|
||||
],
|
||||
"remaining_unaccepted": [
|
||||
"Whole647,new codec impact,performance/stablegain/50ms/P95/D10/final172/normalOS/Windows remain unaccepted.",
|
||||
"Arbitrary malformed/error states, general reentry/parallel mutation, nonfinite ownership,adoption/unit completion remain unaccepted.",
|
||||
"The historical r287 root cause is not uniquely proven by this successful bounded repair."
|
||||
],
|
||||
"performance_accepted": false,
|
||||
"adoption_accepted": false,
|
||||
"unit_accepted": false,
|
||||
"reviewer_execution": {
|
||||
"engine": 0,
|
||||
"compiler": 0,
|
||||
"tests": 0,
|
||||
"validator": 0,
|
||||
"author": 0,
|
||||
"new_agents": 0,
|
||||
"read_only_codec_decode": true
|
||||
},
|
||||
"pin_counts": {
|
||||
"direct": 61,
|
||||
"current_doc4": 4,
|
||||
"archival_before": 4,
|
||||
"total": 69
|
||||
}
|
||||
}
|
||||
+225
@@ -0,0 +1,225 @@
|
||||
extends "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd"
|
||||
const Budget := preload("res://scripts/core/performance_budget.gd")
|
||||
class CustomBudget extends Budget:
|
||||
func _percentile(_raw: Array, _percentile: int) -> int: return 17
|
||||
func _aggregated_value(_aggregation: int, average: int, _p95: int, _maximum: int) -> int: return average + 13
|
||||
var candidate := false
|
||||
var core: RefCounted
|
||||
var records: Array = []
|
||||
var signals: Array = []
|
||||
var reenter := false
|
||||
var reenter_active := false
|
||||
var record_calls := 0
|
||||
var guard_calls := 0
|
||||
var getter_calls := 0
|
||||
var clear_calls := 0
|
||||
func state(b: Variant) -> Array:
|
||||
return [b._samples.duplicate(true), b._ordered_samples.duplicate(true), b._ordered_sample_bytes.duplicate(true), b._integer_window_bytes.duplicate(true), b._totals.duplicate(true), b._sample_counts.duplicate(true), b._budgets.duplicate(true), b.sample_capacity]
|
||||
func capture(b: Variant, label: String, result: Variant) -> void:
|
||||
records.append([label, result.duplicate(true) if result is Dictionary or result is Array else result, state(b), signals.duplicate(true)])
|
||||
func record(b: Variant, metric: StringName, value: int, label: String, direct := false, expected_ok := true) -> void:
|
||||
record_calls += 1
|
||||
var before := state(b)
|
||||
var had_raw: bool = b._samples.has(metric)
|
||||
var raw: Array = b._samples.get(metric, [])
|
||||
var ordered: Array = b._ordered_samples.get(metric, [])
|
||||
var reuse: bool = b.get_script().resource_path == "res://scripts/core/performance_budget.gd" and b._ordered_samples.has(metric) and b._ordered_sample_bytes.get(metric, PackedByteArray()) == var_to_bytes(raw)
|
||||
for v: Variant in raw: reuse = reuse and typeof(v) == TYPE_INT
|
||||
var before_core: Variant = b._p23r257_native_core if candidate else null
|
||||
var result: Dictionary
|
||||
if direct:
|
||||
var native: Dictionary
|
||||
if candidate: native = core.call(&"performance_record_sample", b, metric, value)
|
||||
else:
|
||||
var original: Dictionary = b.record_sample(metric, value)
|
||||
native = {&"supported": bool(original.get(&"ok", false)), &"report": original.get(&"report", {})}
|
||||
check(bool(native.get(&"supported", false)), label + " direct builtin operation supported")
|
||||
result = {&"ok": bool(native.get(&"supported", false)), &"report": native.get(&"report", {})}
|
||||
else: result = b.record_sample(metric, value)
|
||||
check(bool(result.get(&"ok", false)) == expected_ok, label + " result disposition")
|
||||
check(not had_raw or is_same(raw, b._samples.get(metric)), label + " original raw alias preserved")
|
||||
check(not reuse or is_same(ordered, b._ordered_samples.get(metric)), label + " existing valid ordered alias preserved")
|
||||
var core_ok := true
|
||||
if candidate:
|
||||
var after_core: Variant = b._p23r257_native_core
|
||||
core_ok = is_same(before_core, after_core) if before_core != null else (after_core == null if direct or not expected_ok or b.get_script().resource_path != "res://scripts/core/performance_budget.gd" else after_core != null)
|
||||
check(core_ok, label + " native object ownership separately asserted")
|
||||
check(expected_ok or var_to_bytes(before) == var_to_bytes(state(b)), label + " invalid input retains all diagnostic state")
|
||||
capture(b, label, result)
|
||||
func getter(b: Variant, metric: StringName, label: String, all_reports := false) -> void:
|
||||
getter_calls += 1
|
||||
var result: Variant = b.get_all_reports() if all_reports else b.get_report(metric)
|
||||
check(result is Dictionary or result is Array, label + " public report shape")
|
||||
capture(b, label, result)
|
||||
func clear_capture(b: Variant, metric: StringName, label: String) -> void:
|
||||
clear_calls += 1
|
||||
var budgets_before: Dictionary = b._budgets.duplicate(true)
|
||||
b.clear(metric)
|
||||
var cleared := true
|
||||
for m: Dictionary in [b._samples, b._ordered_samples, b._ordered_sample_bytes, b._integer_window_bytes, b._totals, b._sample_counts]:
|
||||
cleared = cleared and (m.is_empty() if metric.is_empty() else not m.has(metric))
|
||||
check(cleared and var_to_bytes(budgets_before) == var_to_bytes(b._budgets), label + " six measurement maps cleared and budget settings preserved")
|
||||
capture(b, label, {})
|
||||
func guard(b: Variant, metric: StringName, value: int, label: String) -> void:
|
||||
guard_calls += 1
|
||||
var before := state(b)
|
||||
var maps: Array = [b._samples, b._ordered_samples, b._ordered_sample_bytes, b._integer_window_bytes, b._totals, b._sample_counts, b._budgets]
|
||||
var refs: Array = [b._samples.get(metric), b._ordered_samples.get(metric), b._budgets.get(metric)]
|
||||
var flags_before: Array = []
|
||||
var nested_before: Array = []
|
||||
for m: Dictionary in maps:
|
||||
flags_before.append(m.is_read_only())
|
||||
nested_before.append(is_same(refs[2], m))
|
||||
for ref: Variant in refs: flags_before.append(ref.is_read_only() if ref is Array or ref is Dictionary else null)
|
||||
var same_before: Array = []
|
||||
for i: int in range(maps.size()):
|
||||
for j: int in range(i + 1, maps.size()): same_before.append(is_same(maps[i], maps[j]))
|
||||
var result: Dictionary = core.call(&"performance_record_sample", b, metric, value) if candidate else {&"supported": false}
|
||||
check(result.size() == 1 and typeof(result.get(&"supported")) == TYPE_BOOL and not bool(result[&"supported"]), label + " unsupported before mutation")
|
||||
var after_maps: Array = [b._samples, b._ordered_samples, b._ordered_sample_bytes, b._integer_window_bytes, b._totals, b._sample_counts, b._budgets]
|
||||
var same_after: Array = []
|
||||
for i: int in range(after_maps.size()):
|
||||
for j: int in range(i + 1, after_maps.size()): same_after.append(is_same(after_maps[i], after_maps[j]))
|
||||
var after_refs: Array = [b._samples.get(metric), b._ordered_samples.get(metric), b._budgets.get(metric)]
|
||||
var flags_after: Array = []
|
||||
var nested_after: Array = []
|
||||
var identity_ok := true
|
||||
for i: int in range(maps.size()):
|
||||
identity_ok = identity_ok and is_same(maps[i], after_maps[i])
|
||||
flags_after.append(after_maps[i].is_read_only())
|
||||
nested_after.append(is_same(after_refs[2], after_maps[i]))
|
||||
for i: int in range(refs.size()):
|
||||
identity_ok = identity_ok and is_same(refs[i], after_refs[i])
|
||||
flags_after.append(after_refs[i].is_read_only() if after_refs[i] is Array or after_refs[i] is Dictionary else null)
|
||||
check(var_to_bytes(before) == var_to_bytes(state(b)) and same_before == same_after and nested_before == nested_after and flags_before == flags_after and identity_ok, label + " full values, map/nested/reference identity and readonly flags unchanged")
|
||||
capture(b, label, {&"result": result, &"nested_before": nested_before, &"nested_after": nested_after, &"readonly_before": flags_before, &"readonly_after": flags_after, &"identity_preserved": identity_ok})
|
||||
func on_budget(metric: StringName, report: Dictionary, b: Variant) -> void:
|
||||
signals.append([metric, report.duplicate(true)])
|
||||
report[&"p95_us"] = -9999
|
||||
if reenter and not reenter_active:
|
||||
reenter_active = true
|
||||
var nested: Dictionary = b.record_sample(metric, 13)
|
||||
signals.append(["nested_return", nested.duplicate(true)])
|
||||
reenter_active = false
|
||||
var codec_rows: Array = []
|
||||
func codec_one(values: Array, label: String) -> void:
|
||||
var before := var_to_bytes(values)
|
||||
var before_typed := values.is_typed()
|
||||
var before_builtin := values.get_typed_builtin()
|
||||
var before_readonly := values.is_read_only()
|
||||
var result: Dictionary = core.call(&"encode_integer_window", values)
|
||||
check(result.size() == 2 and result.get(&"supported") == true and result.get(&"bytes") is PackedByteArray, label + " exact supported shape")
|
||||
var encoded: PackedByteArray = result.get(&"bytes", PackedByteArray())
|
||||
check(encoded == before, label + " actual engine codec exact bytes")
|
||||
check(var_to_bytes(values) == before and values.is_typed() == before_typed and values.get_typed_builtin() == before_builtin and values.is_read_only() == before_readonly, label + " input value/type/readonly preserved")
|
||||
var another: Dictionary = core.call(&"encode_integer_window", values)
|
||||
check(another.get(&"bytes") == before and not is_same(result, another), label + " independent report owner")
|
||||
if not encoded.is_empty(): encoded[0] = encoded[0] ^ 255
|
||||
result[&"bytes"] = encoded
|
||||
var after: Dictionary = core.call(&"encode_integer_window", values)
|
||||
check(another.get(&"bytes") == before and after.get(&"bytes") == before and var_to_bytes(values) == before, label + " returned bytes mutation isolated from source and repeated result")
|
||||
codec_rows.append([label, before_typed, before_builtin, before_readonly, before, another.get(&"bytes")])
|
||||
func codec_unsupported(values: Array, label: String) -> void:
|
||||
var before := var_to_bytes(values)
|
||||
var flags := [values.is_typed(), values.get_typed_builtin(), values.is_read_only()]
|
||||
var result: Dictionary = core.call(&"encode_integer_window", values)
|
||||
check(result.size() == 1 and result.get(&"supported") == false, label + " unsupported shape")
|
||||
check(var_to_bytes(values) == before and flags == [values.is_typed(), values.get_typed_builtin(), values.is_read_only()], label + " unsupported no input mutation")
|
||||
var again: Dictionary = core.call(&"encode_integer_window", values)
|
||||
check(again.size() == 1 and again.get(&"supported") == false and not is_same(result, again), label + " repeated unsupported independent owner")
|
||||
codec_rows.append([label, flags, before, result])
|
||||
func run_codec() -> Dictionary:
|
||||
check(core.has_method(&"encode_integer_window"), "actual integer codec method registered")
|
||||
var bounds: Array[int] = [(-9223372036854775807 - 1), -2147483649, -2147483648, -1, 0, 1, 2147483647, 2147483648, 9223372036854775807]
|
||||
for count: int in [0, 1, 2, 9, 511, 512, 513]:
|
||||
for is_typed: bool in [false, true]:
|
||||
for readonly: bool in [false, true]:
|
||||
var values: Array = []
|
||||
if is_typed: values = Array([], TYPE_INT, &"", null)
|
||||
for i: int in range(count): values.append(bounds[i % bounds.size()])
|
||||
if count % 2 == 1: values.reverse()
|
||||
if readonly: values.make_read_only()
|
||||
codec_one(values, "codec/count%s/typed%s/readonly%s" % [count, is_typed, readonly])
|
||||
for unsupported: Array in [[1, 2.0], ["1"], [null], [[1]]]: codec_unsupported(unsupported, "codec/unsupported/%s" % codec_rows.size())
|
||||
var empty_floats: Array[float] = []
|
||||
codec_unsupported(empty_floats, "codec/unsupported/typed-empty-float")
|
||||
check(codec_rows.size() == 33, "exact 28 supported and five unsupported codec cases")
|
||||
return typed("integer-codec-fixtures", codec_rows)
|
||||
func run() -> void:
|
||||
output = OS.get_environment("THE_TREE_RUNTIME_MONITOR_OUTPUT")
|
||||
var mode := OS.get_environment("THE_TREE_BUDGET_MODE")
|
||||
if not output.is_absolute_path() or mode not in ["r239", "r257-r04"]: quit(98); return
|
||||
candidate = mode == "r257-r04"
|
||||
core = ClassDB.instantiate(&"TheTreeNumericCore")
|
||||
check(core != null and core.has_method(&"performance_record_sample") == candidate, "exact old/new API selected")
|
||||
check(FileAccess.get_sha256("res://scripts/core/performance_budget.gd") == OS.get_environment("THE_TREE_EXPECTED_BUDGET_SHA"), "exact original/candidate budget loaded")
|
||||
var metric := &"path_query"
|
||||
var b = Budget.new(512)
|
||||
for i: int in range(600): record(b, metric, (i * 37) % 10007, "rolling512/%03d" % i)
|
||||
for capacity: int in [1, 3, 0, -1]:
|
||||
for aggregation: int in [0, 1, 2, 9]:
|
||||
b = Budget.new(3); b.sample_capacity = capacity
|
||||
b._budgets[metric] = {&"aggregation": aggregation, &"limit_us": 2}
|
||||
for v: int in [0, 1, 2, 100, 9223372036854775807, 3]: record(b, metric, v, "capacity%s/aggregation%s/value%s" % [capacity, aggregation, v])
|
||||
for aggregation: int in range(3):
|
||||
b = Budget.new(3); b.set_budget(metric, 2, aggregation)
|
||||
for v: int in [1, 2, 3]: record(b, metric, v, "mutation%s/warm%s" % [aggregation, v])
|
||||
b._samples[metric].reverse()
|
||||
getter(b, metric, "mutation%s/read-after-in-place" % aggregation)
|
||||
record(b, metric, 4, "mutation%s/in-place" % aggregation)
|
||||
var ints: Array[int] = [1, 5, 9]; b._samples[metric] = ints
|
||||
record(b, metric, 12, "mutation%s/typed-int" % aggregation)
|
||||
ints.reverse(); record(b, metric, 13, "mutation%s/typed-int-alias-reverse" % aggregation)
|
||||
b._samples[metric] = [1, 5.8, -9.2]; record(b, metric, 14, "mutation%s/mixed-float-fallback" % aggregation)
|
||||
var floats: Array[float] = [1.0, 5.8, -9.2]; b._samples[metric] = floats
|
||||
record(b, metric, 15, "mutation%s/typed-float-fallback" % aggregation)
|
||||
b._samples[metric] = ["1", "5", "-9"]; record(b, metric, 16, "mutation%s/string-fallback" % aggregation)
|
||||
b._samples[metric] = [1, 5, 9]; record(b, metric, 17, "mutation%s/back-to-ints" % aggregation)
|
||||
clear_capture(b, metric, "mutation%s/clear-metric" % aggregation)
|
||||
record(b, metric, 18, "mutation%s/after-clear" % aggregation)
|
||||
clear_capture(b, &"", "mutation%s/clear-all" % aggregation)
|
||||
for i: int in range(20): getter(b, StringName("unknown%s" % i), "mutation%s/unknown%s" % [aggregation, i])
|
||||
getter(b, metric, "mutation%s/all-reports" % aggregation, true)
|
||||
for aggregation: int in range(3):
|
||||
for limits: Array in [[9223372036854775806, 2, 4], [(-9223372036854775807 - 1), 3, 1], [0, 9223372036854775807, 0]]:
|
||||
b = Budget.new(3); b.set_budget(metric, 2, aggregation); b._totals[metric] = int(limits[0]); b._sample_counts[metric] = int(limits[1])
|
||||
record(b, metric, int(limits[2]), "lifetime%s/%s" % [aggregation, limits])
|
||||
b = Budget.new(3); record(b, &"", 1, "invalid/empty-id", false, false); record(b, metric, -1, "invalid/negative", false, false)
|
||||
for field: StringName in [&"_totals", &"_sample_counts"]:
|
||||
b = Budget.new(3); b.get(field)[&"limit_us"] = 100; b._budgets[&"limit_us"] = b.get(field)
|
||||
guard(b, &"limit_us", 1, "nested-budget-alias/%s/guard" % field)
|
||||
record(b, &"limit_us", 1, "nested-budget-alias/%s/public" % field)
|
||||
b = Budget.new(3); b._integer_window_bytes = b._ordered_sample_bytes
|
||||
guard(b, metric, 7, "owner-byte-map-alias/guard"); record(b, metric, 7, "owner-byte-map-alias/public")
|
||||
b = Budget.new(3); b._sample_counts = b._totals
|
||||
guard(b, metric, 7, "owner-total-count-alias/guard"); record(b, metric, 7, "owner-total-count-alias/public")
|
||||
b = Budget.new(3); b._samples[metric] = [1, 2]; b._samples[metric].make_read_only()
|
||||
guard(b, metric, 7, "raw-readonly/guard")
|
||||
b = Budget.new(3); b._sample_counts.make_read_only(); guard(b, metric, 7, "dictionary-readonly/guard")
|
||||
b = Budget.new(3); b._samples[metric] = [1, 2.0]; guard(b, metric, 7, "noninteger/guard")
|
||||
b = Budget.new(3); b._samples[metric] = [1, 2]; var malformed: Array[int] = [1]; b._ordered_samples[metric] = malformed; b._ordered_sample_bytes[metric] = var_to_bytes(b._samples[metric])
|
||||
guard(b, metric, 7, "ordered-size/guard")
|
||||
for nested: bool in [false, true]:
|
||||
b = Budget.new(3); b.set_budget(metric, 1, 1); signals.clear(); reenter = nested; reenter_active = false
|
||||
b.budget_exceeded.connect(Callable(self, "on_budget").bind(b))
|
||||
record(b, metric, 7, "signal/reentry%s" % nested)
|
||||
check(int(b._sample_counts[metric]) == (2 if nested else 1) and int(records[-1][1][&"report"][&"p95_us"]) == 7, "signal copy isolated and nested lifetime count")
|
||||
b.budget_exceeded.disconnect(Callable(self, "on_budget").bind(b)); signals.clear(); reenter = false
|
||||
b = Budget.new(3)
|
||||
if candidate: b._p23r257_native_core = RefCounted.new()
|
||||
record(b, metric, 5, "generic-core-fallback")
|
||||
b = CustomBudget.new(3)
|
||||
for v: int in [5, 1, 8]: record(b, metric, v, "custom-script/%s" % v)
|
||||
b = Budget.new(3)
|
||||
for v: int in [0, 9223372036854775807, 1]: record(b, metric, v, "direct-supported/%s" % v, true)
|
||||
check(record_calls == 753, "exact record operation count")
|
||||
check(guard_calls == 8, "exact unsupported guard count")
|
||||
check(getter_calls == 66, "exact public getter count")
|
||||
check(clear_calls == 6, "exact clear count")
|
||||
var fixtures := typed("budget-local-fixtures", records)
|
||||
var codec_fixtures := run_codec()
|
||||
var report := {"plan_id":"P23-02", "mode":mode, "pid":OS.get_process_id(), "checks":checks, "failures":failures, "passed":failures.is_empty(), "record_calls":record_calls, "guard_calls":guard_calls, "getter_calls":getter_calls, "clear_calls":clear_calls, "case_count":records.size(), "fixtures":fixtures, "codec_cases":codec_rows.size(), "codec_fixtures":codec_fixtures, "candidate_adopted":false, "unit_accepted":false, "performance_accepted":false, "limits":["Original239/240 accepted r260-r02 fixture reused versus fresh candidate290/library291. Exact original record fixture body preserved; codec fixtures are separate. Full raw/order/bytes/totals/counts/budgets/capacity/report/signal trace bytes paired; native core object excluded from serialization and separately asserted. Guard-only malformed/read-only states prove native unsupported/no mutation; no original error-path execution or arbitrary state acceptance.", "No whole647, final172, performance, realtime x3/OS/Windows or adoption acceptance."]}
|
||||
var f := FileAccess.open(output.path_join("report.json"), FileAccess.WRITE)
|
||||
if f == null: quit(98); return
|
||||
f.store_string(JSON.stringify(report, "\t")); f.close()
|
||||
print("Native Budget record local: %d checks, %d failures" % [checks, failures.size()]); quit(0 if failures.is_empty() else 1)
|
||||
+55
@@ -0,0 +1,55 @@
|
||||
# coding: utf-8
|
||||
from pathlib import Path
|
||||
import hashlib,importlib.util,json,os,shutil,subprocess,sys,uuid
|
||||
sys.dont_write_bytecode=True
|
||||
R=Path(__file__).resolve().parents[2];A=R/'artifacts/original-completion-2026-10-02';D=R/'docs/plans/original-completion-2026-10-02';O=A/'p23-02-native-integer-window-codec-local-r292-r02';NAMES=['IMPLEMENTATION_PLAN.md','PROGRESS_INTEGRATION.md','work_packages.json','progress_snapshot.json']
|
||||
def mod(name,p):
|
||||
s=importlib.util.spec_from_file_location(name,p);m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m
|
||||
def unpack(q):
|
||||
raw=subprocess.run(['/opt/homebrew/bin/zstd','-d','-q','-c',q['path']],check=True,capture_output=True,timeout=10).stdout;assert len(raw)==q['uncompressed_bytes'] and hashlib.sha256(raw).hexdigest()==q['uncompressed_sha256'];return raw
|
||||
def main():
|
||||
r=mod('local260',R/'tools/run_all_tests.py');outer=mod('owned260',r.SUPPORT/'owned_outer.py');plan=r.read(O/'input.json');fixed=plan['pins'];assert not (O/'execution.json').exists()
|
||||
source=r.source_refs(R);player=r.default_player(R);docs={n:r.sha(D/n) for n in NAMES};assert source==plan['source_before'] and player==plan['default_before'] and docs==plan['doc4_before']
|
||||
prepath=A/'p23-02-native-integer-window-codec-local-preexecution-independent-review-r292-r02.json';pre=r.read(prepath);assert pre['execution_allowed'] and not pre['blockers']
|
||||
for group in ['evidence_sha256','canonical_doc4_context_pins']:
|
||||
for key,q in pre[group].items():
|
||||
f=Path(q.get('path',key));assert f.stat().st_size==q['bytes'] and r.sha(f)==q['sha256']
|
||||
root=r.read(O/'preexecution-root-verification.json');assert root['passed'] and root['review_sha256']==r.sha(prepath)
|
||||
stage=Path(plan['stage']);parent=Path(plan['parent']);budget=stage/'scripts/core/performance_budget.gd';original=budget.read_bytes();modified=Path(fixed['modified_budget']['path']).read_bytes();public=(stage/'project.godot').read_bytes();patched=False
|
||||
assert hashlib.sha256(original).hexdigest()==plan['original_budget_sha256']
|
||||
def protect():
|
||||
assert r.source_refs(R)==source and r.default_player(R)==player and {n:r.sha(D/n) for n in NAMES}==docs and r.inventory(r.SUPPORT)==plan['support_inventory']
|
||||
assert r.inventory(parent,stage=True)==plan['expected_stage'] and r.inventory(stage,stage=True)==(plan['patched_stage'] if patched else plan['expected_stage'])
|
||||
for key,q in fixed.items():
|
||||
f=Path(q['path']);assert f.stat().st_size==q['bytes'] and r.sha(f)==q['sha256'],key
|
||||
protect();phases=[];samples=[];error=None;cleanup=[];cleanup_errors=[]
|
||||
try:
|
||||
for mode in ['r257-r04']:
|
||||
protect();assert not outer.native.helper['live_engines']() and shutil.disk_usage(A).free>=plan['capacity_floor_bytes']
|
||||
if mode=='r257-r04':budget.write_bytes(modified);patched=True
|
||||
protect();output=O/(mode+'-measurement');output.mkdir();ident=uuid.uuid4().hex;startup='TheTree-PCK-tests-'+ident+'-budget-startup';profile='TheTree-PCK-tests-'+ident+'-budget-runtime';assert not r.profile_path(startup).exists() and not r.profile_path(profile).exists()
|
||||
env=r.fresh_environment(os.environ);env.update(THE_TREE_PACK_PROFILE_NAME=profile,THE_TREE_PACK_PROFILE_EXPECTED=str(r.profile_path(profile)),THE_TREE_PACK_PROFILE_REPORT=str(O/(mode+'-profile.json')),THE_TREE_RUNTIME_MONITOR_OUTPUT=str(output),THE_TREE_BUDGET_MODE=mode,THE_TREE_EXPECTED_BUDGET_SHA=fixed['modified_budget']['sha256'] if patched else plan['original_budget_sha256'])
|
||||
(stage/'project.godot').write_bytes(r.private_project(public,startup));phase=O/mode;argv=[fixed['engine']['path'],'--headless','--path',str(stage),'--script',fixed['starter_'+mode]['path'],'--verbose','--log-file',str(phase/'engine-native.log')]
|
||||
result,capture=outer.run_phase(argv,phase,90,env,now_fn=r.now,dump_fn=r.write,sha_fn=r.sha,live_engines_fn=outer.native.helper['live_engines']);row=dict(mode=mode,result=result,capture=capture);phases.append(row);r.write(O/(mode+'-phase.json'),row)
|
||||
rp=output/'report.json';report=r.read(rp) if rp.exists() else None
|
||||
if report is not None:samples.append(report)
|
||||
assert result and result['exit_code']==0 and not result['error_lines'] and not result['timed_out'] and capture['passed']
|
||||
logs=''.join((phase/n).read_text() for n in ['stdout.log','stderr.log','engine-native.log']);assert 'Orphan StringName:' not in logs and 'unclaimed string names' not in logs
|
||||
assert report and report['passed'] and not report['failures'] and report['pid']==result['pid'] and report['mode']==mode and report['checks']==plan['expected_checks'] and report['case_count']==833 and report['codec_cases']==33
|
||||
assert report['record_calls']==753 and report['guard_calls']==8 and report['getter_calls']==66 and report['clear_calls']==6
|
||||
assert (phase/'stdout.log').read_text().count('Native Budget record local: %d checks, 0 failures'%plan['expected_checks'])==1 and (phase/'stdout.log').read_text().count('NATIVE_ADAPTER_LIBRARY_REGISTERED')==1
|
||||
r.profile_gate(r.profile_path(profile),O/(mode+'-profile.json'),profile);unpack(report['fixtures']);unpack(report['codec_fixtures']);assert sum(f.stat().st_size for f in O.rglob('*') if f.is_file())<=16*1048576
|
||||
(stage/'project.godot').write_bytes(public);budget.write_bytes(original);patched=False;protect()
|
||||
assert unpack(samples[0]['fixtures'])==unpack(r.read(fixed['baseline_report']['path'])['fixtures']), 'new Budget fixture differs from accepted full original r260-r02 oracle'
|
||||
except BaseException as caught:error=type(caught).__name__+': '+str(caught)
|
||||
finally:
|
||||
cleanup,cleanup_errors=outer.finish_captured(outer.OWNED)
|
||||
if all(q['engine_ended'] is True for q in cleanup):budget.write_bytes(original);patched=False;(stage/'project.godot').write_bytes(public)
|
||||
else:cleanup_errors.append('Budget/project restoration refused while owned child remains live')
|
||||
guard_errors=[]
|
||||
try:assert not patched and budget.read_bytes()==original;protect()
|
||||
except BaseException as caught:guard_errors.append(type(caught).__name__+': '+str(caught))
|
||||
passed=error is None and not guard_errors and not cleanup_errors and len(phases)==1 and len(samples)==1
|
||||
r.write(O/'execution.json',dict(passed=passed,error=error,guard_errors=guard_errors,phases=phases,samples=samples,cleanup=cleanup,cleanup_errors=cleanup_errors,shared_Budget_restored_byteexact=not patched and budget.read_bytes()==original,input_source_default_doc4_preserved=not guard_errors,candidate_adopted=False,unit_accepted=False,performance_accepted=False,limitations=['Finite accepted original r260-r02 reused versus fresh candidate290/library291 Budget report/state/signal/ownership, and 33 separate engine codec fixtures only. Guard-only malformed/readonly API unsupported/no mutation; original error paths and arbitrary malformed states not accepted. No whole647/final172/impact/performance/OS/Windows/adoption/unit acceptance.']))
|
||||
print(json.dumps(dict(passed=passed,error=error,guard_errors=guard_errors)),flush=True);return 0 if passed else 1
|
||||
if __name__=='__main__':raise SystemExit(main())
|
||||
+353
@@ -0,0 +1,353 @@
|
||||
{
|
||||
"passed": true,
|
||||
"review_sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49",
|
||||
"verified_entries": [
|
||||
{
|
||||
"path": "/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"bytes": 351312912,
|
||||
"sha256": "c7cccbf8fb143e34e02fd6521e09be2c2b974f0d5db080b19071c9c570718ccf"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-build-preview-monitor-compressed-r06.gd",
|
||||
"bytes": 17582,
|
||||
"sha256": "92d5e1956f4e613e12555d756de4f71fef03678cde159ac68fac3188ce3f336e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/tools/run_all_tests.py",
|
||||
"bytes": 26296,
|
||||
"sha256": "320ca668732b4ff72fc4449998af2327d4e5c527b06896740806aaf0487282b4"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-cache-public-mutations-r144/profile_guard.gd",
|
||||
"bytes": 2276,
|
||||
"sha256": "597696c705cc8f0e79a35265ca3ef8df55f7fc3c4e0e5a2ce9a4e20e29e29a6f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage/scripts/core/performance_budget.gd",
|
||||
"bytes": 10355,
|
||||
"sha256": "742c464d16ab417cbc3c2930d43e508faf5c9f7688da416324ca1150bdb9b6b9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.gd",
|
||||
"bytes": 16880,
|
||||
"sha256": "6e29686f84db92ce977b7f1aedfdae81969626544facb0b0e6e7ca46634c0fb4"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.gd",
|
||||
"bytes": 13359,
|
||||
"sha256": "9524ec12bf4b5dea78498abcb4d41ee5ef90d159d1d3b3fe15b3e46ad478ea2c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02.py",
|
||||
"bytes": 6976,
|
||||
"sha256": "ffeb4df73c14adc68baa88a32b486d0ba2805da3495d2fbe1801ba0b4ded4628"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02.py",
|
||||
"bytes": 6790,
|
||||
"sha256": "e44f30b961cc6798cb04c460ce1976cbb847180276de1fa937171d3b7b94228f"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-local-r292-r02.py",
|
||||
"bytes": 12091,
|
||||
"sha256": "cfbfa415243a5af6588de3b400077e25640748f184a01d757fd684b66b999f18"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd",
|
||||
"bytes": 1139,
|
||||
"sha256": "e998db2bfe4da2140df3bacf0ef3365eb13e304eb99b9294de67ad6b37c906fd"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r257-r04-guarded.gd",
|
||||
"bytes": 1125,
|
||||
"sha256": "7984c076739c4db5c8e2c5516fd14cbd9641fbacfc6cb9a668495c1a9e566749"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/access.gdextension",
|
||||
"bytes": 331,
|
||||
"sha256": "a091aea5495a53bce3d02752f04dc18b7d53f834d3bac04c9d14379a7f06d260"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/TheTree-integer-window-local-r292-5f53aa2d1ea44e93bc03acf3114567b5/access.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"bytes": 367552,
|
||||
"sha256": "ad7ed14b9820005af60c48594387e336df09087f7497007c6ab6f67d5a212e40"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/execution.json",
|
||||
"bytes": 7210,
|
||||
"sha256": "ecacdcf050b7a77ecf3b356f75bbfbd089813f4b9744fd58f4631282b5898248"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/report.json",
|
||||
"bytes": 1329,
|
||||
"sha256": "422b909b1e21929a1f704f5bf51c8312621cc3722d921bd966a50c7dd2a7cde0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/input.json",
|
||||
"bytes": 970092,
|
||||
"sha256": "d30d15d1b2c73a7c72af22379e63859e408bbdf62e617c5f4de2e74dd22bcab3"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/execution.json",
|
||||
"bytes": 22900,
|
||||
"sha256": "f5002356ba257300177d8c08535031563e7e016d5a7939c55b463858ed96d7d7"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-actual-independent-review-r260-r02.json",
|
||||
"bytes": 29240,
|
||||
"sha256": "2766609c663f0bf408e994267a97265d511e52b61450567aa7939e2c4ab428c9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/actual-root-verification.json",
|
||||
"bytes": 127,
|
||||
"sha256": "6c0fa00e031646bee0749db01146c0652b0fdda025dd4e878e1dcf24486f0a34"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-local-r260-r02/r239-measurement/budget-local-fixtures.varbytes.zst",
|
||||
"bytes": 56731,
|
||||
"sha256": "0078bd09317815a8b6884ec459400b4e4ea77874291a57f782014fb7cdfcfb6a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/actual-root-verification.json",
|
||||
"bytes": 17087,
|
||||
"sha256": "8fc155e5a9ec9098429db93af59871d98b503616bb5ac32efc26bd8651e8cb33"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/input.json",
|
||||
"bytes": 973327,
|
||||
"sha256": "00005b7b8a289baaccb4a4bb9ae5df385607524f71b6c1dad6ac554961dbe508"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r292.json",
|
||||
"bytes": 21378,
|
||||
"sha256": "b2f9de6e72d6fa4ea4d9f855d461819eda1760c8e7edc387684c1fa181a89af1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/preexecution-root-verification.json",
|
||||
"bytes": 11972,
|
||||
"sha256": "4679e98ac3da1ac61761046e4d3ac7f86da8f1417644ec3d61e414ef474143fc"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292.gd",
|
||||
"bytes": 16884,
|
||||
"sha256": "95dfed0384166100e0ef7d02c18ddefa8063b24e2b5775762f3a20f4156ef44a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292.py",
|
||||
"bytes": 6972,
|
||||
"sha256": "bd56bd53d79c992e21fe3599aa1800568820baecc7ec1520aa3916206da3f9bc"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-local-r292.py",
|
||||
"bytes": 11790,
|
||||
"sha256": "acafa80cf9bda056f8012a9d6089ff2b7cde8826c60acf5e26a45fac74f6a7a9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/r257-r04-guarded.gd",
|
||||
"bytes": 1131,
|
||||
"sha256": "20323811de51d987176976eb6677e8c91d8cb9386f86aedfe4ea602b2969699f"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292/access.gdextension",
|
||||
"bytes": 331,
|
||||
"sha256": "a091aea5495a53bce3d02752f04dc18b7d53f834d3bac04c9d14379a7f06d260"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r287.json",
|
||||
"bytes": 20073,
|
||||
"sha256": "5cab8f0592890851a6ca76057f4201520a739710ac90a4d882b37db699e856e2"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/input.json",
|
||||
"bytes": 974387,
|
||||
"sha256": "99722da0e6a2745962da2bc0c58c99a26363e86eb549a3039b06674e15c594b1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-preexecution-independent-review-r292-r02.json",
|
||||
"bytes": 26634,
|
||||
"sha256": "cd2cb94325eaddbb861682020132890f1dc47af7a2db41651af622e331f16e0e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/preexecution-root-verification.json",
|
||||
"bytes": 15599,
|
||||
"sha256": "e99421447d7fb24c8b2134aaba9b6fe1390cbf0486643863adfa4f1a9fb44e8c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-phase.json",
|
||||
"bytes": 8276,
|
||||
"sha256": "5a62866e8b576960be97c2fdb7d3d67c1ac37f1ba511dee6da66476a54d34f28"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-profile.json",
|
||||
"bytes": 912,
|
||||
"sha256": "d193ff945717bd35368bc28c69a4cd2fb965932c773edcd6961dcf37edb610d4"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/execution.json",
|
||||
"bytes": 12718,
|
||||
"sha256": "5a4b118df6940db957b1c0b788210816303aa5fcb1f4dc8a3a951afce1447929"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/integer-codec-fixtures.varbytes.zst",
|
||||
"bytes": 788,
|
||||
"sha256": "c207dd047771686542d7ad79985445dd61b7b659d98e421db4261871b3056139"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/report.json",
|
||||
"bytes": 2029,
|
||||
"sha256": "c99eacdd44754dcdb57d840e24726810befd66fbbfbdef81c8ba52db0c4c1a00"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/budget-local-fixtures.varbytes.zst",
|
||||
"bytes": 56731,
|
||||
"sha256": "0078bd09317815a8b6884ec459400b4e4ea77874291a57f782014fb7cdfcfb6a"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/stderr.log",
|
||||
"bytes": 0,
|
||||
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/ended.json",
|
||||
"bytes": 1822,
|
||||
"sha256": "ea4bb6d2e6fd4736a5a8d93bbd00e6dff9ceb8c380abcb203673eb706aa38d58"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/adapter-owned-cleanup.json",
|
||||
"bytes": 351,
|
||||
"sha256": "c1f3d289b362cc61b9be169a3994be27df39f35e6221881b4a9678ce3c72ba54"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log",
|
||||
"bytes": 7819,
|
||||
"sha256": "866552d409526421625b9566b7603e70b06f5b1fbbdbd9709c33b19ea3672e21"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/stdout.log",
|
||||
"bytes": 7969,
|
||||
"sha256": "90200123ba80aed7cb4b15032208b66948ba98b0e4da01eb1bc4240947fea914"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/started.json",
|
||||
"bytes": 2467,
|
||||
"sha256": "c75ea62d5d962802b1db7869939b15cefbc57ed99c0fe551c0d86dd584305720"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/process.json",
|
||||
"bytes": 6818,
|
||||
"sha256": "b94ad4e88ff502b6491f7b2b3bf04c1ddd884ef6c55e8d20d36d2f40ab357162"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/outer-owned-finally.json",
|
||||
"bytes": 964,
|
||||
"sha256": "b821a1350cd02d081d22e8a08adc471150d4b81dbf5c42b4251aa26fcb2797b2"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p28-ai-r03-typed-difference-independent-review-r01/finite_variant_codec.py",
|
||||
"bytes": 5438,
|
||||
"sha256": "8c7077b53e28da4054bdf7dd88e82de02a51149269a8fce59bae0e74f95b4734"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 506091,
|
||||
"sha256": "e9d4829c66ee13cc4b8036051164abc5a1017f75f7604442fda995949d45d9cc"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 424155,
|
||||
"sha256": "398fd8aa7085b423badf373fb85941206ddd9919b6792e35687e626940285bc2"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/work_packages.json",
|
||||
"bytes": 1216866,
|
||||
"sha256": "bca396b5d19721c9cd2544004d7b391c290b1fc443a3e82fb8db13634b541a5c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r261/before/progress_snapshot.json",
|
||||
"bytes": 487066,
|
||||
"sha256": "380be5576f37c2da5aa9c33aee1d40fe86f431416f3604b302c97b79b65968cb"
|
||||
}
|
||||
],
|
||||
"unit_accepted": false,
|
||||
"performance_accepted": false
|
||||
}
|
||||
+275
@@ -0,0 +1,275 @@
|
||||
{
|
||||
"passed": true,
|
||||
"error": null,
|
||||
"guard_errors": [],
|
||||
"phases": [
|
||||
{
|
||||
"mode": "r257-r04",
|
||||
"result": {
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log"
|
||||
],
|
||||
"pid": 34647,
|
||||
"started_utc": "2026-10-11T23:07:12.673464+00:00",
|
||||
"ended_utc": "2026-10-11T23:07:14.592661+00:00",
|
||||
"wall_seconds": 1.9189023330000006,
|
||||
"exit_code": 0,
|
||||
"helper_exit_code": 0,
|
||||
"timed_out": false,
|
||||
"stdout_sha256": "90200123ba80aed7cb4b15032208b66948ba98b0e4da01eb1bc4240947fea914",
|
||||
"stderr_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
|
||||
"error_lines": [],
|
||||
"owned_popen_ended": true,
|
||||
"old_helper_engine_ended": true,
|
||||
"start_receipt_written": true,
|
||||
"end_receipt_written": true,
|
||||
"lifecycle_error": null,
|
||||
"old_helper_lifecycle_error": null,
|
||||
"actual_start_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_STARTED",
|
||||
"actual_pid": 34647,
|
||||
"owner_pid": 34619,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 3598614666,
|
||||
"pid": 34647,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log"
|
||||
],
|
||||
"started_utc": "2026-10-11T23:07:12.673464+00:00",
|
||||
"current_process_identity": {
|
||||
"pid": 34647,
|
||||
"ppid": 34619,
|
||||
"pgid": 34647,
|
||||
"args": "/Applications/Godot.app/Contents/MacOS/Godot --headless --path /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage --script /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd --verbose --log-file /Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log"
|
||||
},
|
||||
"live_identity_exact": true,
|
||||
"tracked_child_ended_before_initial_probe": false,
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"actual_end_binding": {
|
||||
"scope": "isolated diagnostic owned child",
|
||||
"event": "ENGINE_ENDED",
|
||||
"actual_pid": 34647,
|
||||
"owner_pid": 34619,
|
||||
"command": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log"
|
||||
],
|
||||
"monotonic_ns": 5509550750,
|
||||
"exit_code": 0,
|
||||
"actual_process_exit_code": 0,
|
||||
"engine_ended": true,
|
||||
"timed_out": false,
|
||||
"lifecycle_error": null,
|
||||
"start_receipt_written": true,
|
||||
"pid": 34647,
|
||||
"argv": [
|
||||
"/Applications/Godot.app/Contents/MacOS/Godot",
|
||||
"--headless",
|
||||
"--path",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-reconstruction-local-r209/stage",
|
||||
"--script",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-guarded.gd",
|
||||
"--verbose",
|
||||
"--log-file",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04/engine-native.log"
|
||||
],
|
||||
"ended_utc": "2026-10-11T23:07:14.589319+00:00",
|
||||
"signal_scope": "tracked Popen child only; no external group signal"
|
||||
},
|
||||
"strict_native_diagnostics": {
|
||||
"errors": [],
|
||||
"banner_count": 1,
|
||||
"known_unicode_diagnostic_count": 0,
|
||||
"unrecognized_unicode_diagnostic_count": 0,
|
||||
"exit_leak_diagnostic_lines": []
|
||||
},
|
||||
"external_process_or_group_signals": 0,
|
||||
"owned_child_process_helper_sha256": "c007e712c281573254faa1233c2ac92e100ab87393256a6dc096b35283e43037",
|
||||
"adapter_owned_cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"adapter_error": null,
|
||||
"old_helper_bytes_preserved": true,
|
||||
"helper_wait_None_maps_to_actual_timeout_seconds": 5,
|
||||
"explicit_helper_wait_timeouts_preserved": true,
|
||||
"additional_cleanup_wait_timeout_seconds": 5,
|
||||
"additional_cleanup_max_attempts": 3
|
||||
},
|
||||
"capture": {
|
||||
"actual_captured_pids": [
|
||||
34647
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"pid": 34647,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
}
|
||||
],
|
||||
"adapter_exception": null,
|
||||
"all_captured_ended": true,
|
||||
"outer_cleanup_errors": [],
|
||||
"foreign_process_or_group_signals": 0,
|
||||
"all_cleanup_before_outer_receipt": true,
|
||||
"outer_receipt_written": true,
|
||||
"outer_receipt_error": null,
|
||||
"passed": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"samples": [
|
||||
{
|
||||
"candidate_adopted": false,
|
||||
"case_count": 833,
|
||||
"checks": 4024,
|
||||
"clear_calls": 6,
|
||||
"codec_cases": 33,
|
||||
"codec_fixtures": {
|
||||
"bytes": 788,
|
||||
"codec": "zstd",
|
||||
"field_deletions": 0,
|
||||
"file_envelope": false,
|
||||
"full_bytes_roundtrip": true,
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/integer-codec-fixtures.varbytes.zst",
|
||||
"sha256": "c207dd047771686542d7ad79985445dd61b7b659d98e421db4261871b3056139",
|
||||
"uncompressed_bytes": 124964,
|
||||
"uncompressed_sha256": "8b840d9ef1ff8cb589697c864bedb7286a12ec2fb1ad3afc5f24c16a38f12111"
|
||||
},
|
||||
"failures": [],
|
||||
"fixtures": {
|
||||
"bytes": 56731,
|
||||
"codec": "zstd",
|
||||
"field_deletions": 0,
|
||||
"file_envelope": false,
|
||||
"full_bytes_roundtrip": true,
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/r257-r04-measurement/budget-local-fixtures.varbytes.zst",
|
||||
"sha256": "0078bd09317815a8b6884ec459400b4e4ea77874291a57f782014fb7cdfcfb6a",
|
||||
"uncompressed_bytes": 6589288,
|
||||
"uncompressed_sha256": "3e70b4bf232c6d8a9c4bddb97d813487805f155dd5a9e27900d9e84099c20c26"
|
||||
},
|
||||
"getter_calls": 66,
|
||||
"guard_calls": 8,
|
||||
"limits": [
|
||||
"Original239/240 accepted r260-r02 fixture reused versus fresh candidate290/library291. Exact original record fixture body preserved; codec fixtures are separate. Full raw/order/bytes/totals/counts/budgets/capacity/report/signal trace bytes paired; native core object excluded from serialization and separately asserted. Guard-only malformed/read-only states prove native unsupported/no mutation; no original error-path execution or arbitrary state acceptance.",
|
||||
"No whole647, final172, performance, realtime x3/OS/Windows or adoption acceptance."
|
||||
],
|
||||
"mode": "r257-r04",
|
||||
"passed": true,
|
||||
"performance_accepted": false,
|
||||
"pid": 34647,
|
||||
"plan_id": "P23-02",
|
||||
"record_calls": 753,
|
||||
"unit_accepted": false
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
{
|
||||
"pid": 34647,
|
||||
"cleanup": {
|
||||
"owned_child_created": true,
|
||||
"engine_ended": true,
|
||||
"actual_process_exit_code": 0,
|
||||
"attempts": [
|
||||
{
|
||||
"attempt": 1,
|
||||
"kill_attempted": false,
|
||||
"wait_timeout_seconds": 5,
|
||||
"wait_completed": true,
|
||||
"errors": [],
|
||||
"poll_before": 0,
|
||||
"wait_returned_code": 0,
|
||||
"poll_after": 0
|
||||
}
|
||||
],
|
||||
"errors": []
|
||||
},
|
||||
"outer_cleanup_errors": [],
|
||||
"engine_ended": true,
|
||||
"outer_maximum_helper_invocations": 3,
|
||||
"helper_maximum_waits": 3,
|
||||
"per_wait_timeout_seconds": 5,
|
||||
"foreign_process_or_group_signals": 0
|
||||
}
|
||||
],
|
||||
"cleanup_errors": [],
|
||||
"shared_Budget_restored_byteexact": true,
|
||||
"input_source_default_doc4_preserved": true,
|
||||
"candidate_adopted": false,
|
||||
"unit_accepted": false,
|
||||
"performance_accepted": false,
|
||||
"limitations": [
|
||||
"Finite accepted original r260-r02 reused versus fresh candidate290/library291 Budget report/state/signal/ownership, and 33 separate engine codec fixtures only. Guard-only malformed/readonly API unsupported/no mutation; original error paths and arbitrary malformed states not accepted. No whole647/final172/impact/performance/OS/Windows/adoption/unit acceptance."
|
||||
]
|
||||
}
|
||||
BIN
Binary file not shown.
+173
@@ -0,0 +1,173 @@
|
||||
{
|
||||
"revision": "r290",
|
||||
"review_kind": "bounded independent static repair review",
|
||||
"reviewed_at_utc": "2026-10-11T23:00:57.612468+00:00",
|
||||
"implementation_supported": true,
|
||||
"static_accepted": true,
|
||||
"static_candidate_accepted": true,
|
||||
"build_allowed": false,
|
||||
"execution_allowed": false,
|
||||
"blockers": [],
|
||||
"accepted_scope": "Static fidelity of the single absent typed-array script guard repair only, reusing authenticated parent r285-r02 static findings. No runtime calibration, host build, ABI/load, local/whole equivalence, performance or adoption acceptance.",
|
||||
"findings": [
|
||||
"Full mechanical inverse: replacing the new typed guard once restores parent r285-r02 CPP byteexact; header byteexact. Encoder format, count/type validation, allocation, append/pop update, Budget ownership/report/notification and fallback code otherwise unchanged.",
|
||||
"Primary exact ed1daf0bf Array::get_typed_script returns its Ref<Script>; primary Ref conversion returns Variant(reference). SDK TypedArray<int64_t> initializes builtin INT, empty class name and Variant() script. These support permitting the absent null OBJECT representation alongside NIL, without claiming the observed r287 failure cause is proven.",
|
||||
"Typed arrays still require builtin INT and empty class name. Only NIL or OBJECT converting to nullptr pass; all other Variant types and non-null script objects reject. Object conversion is gated by exact OBJECT type, and SDK declares operator Object*(). Non-null Ref script remains held by the Array during this synchronous validation.",
|
||||
"All four calibration cases (untyped empty, nine-boundary untyped, typed empty, nine-boundary typed) remain mandatory for compatible=true; comparisons use actual UtilityFunctions::var_to_bytes. A failed encode short-circuits that case engine call and compatibility remains false. No guessed format is enabled on a mismatch.",
|
||||
"Unsupported/custom/mixed/readonly/alias handling and old encoder fallback are unchanged by exact inverse. No cache, lifetime, dispatch or callback change is introduced by the local Variant guard.",
|
||||
"Original r287 failed local execution and refusal receipt remain pinned and unaccepted; 4024 checks/112 failures cannot be transferred into new codec acceptance."
|
||||
],
|
||||
"remaining": [
|
||||
"Separate authenticated bridge compile/link preexecution review and actual host build are required.",
|
||||
"Actual engine calibration and the complete 4024-check/33-codec-case local comparison remain required, including typed/untyped, readonly, integer boundaries and caller-owned bytes mutation isolation.",
|
||||
"Root cause of r287 calibration failure is not established by this static repair.",
|
||||
"Whole647, stable gain, 50ms stall budget, P95/D10, final172, normal OS/Windows, production adoption and unit completion remain unaccepted."
|
||||
],
|
||||
"reviewer_runs": {
|
||||
"engine": 0,
|
||||
"compiler": 0,
|
||||
"tests": 0,
|
||||
"validator": 0,
|
||||
"author": 0,
|
||||
"codec": 0,
|
||||
"new_agents": 0
|
||||
},
|
||||
"evidence_sha256": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp",
|
||||
"bytes": 59396,
|
||||
"sha256": "75bc2f659f62889fccac5990461f5b51e8b87f30ca0791e4a4c542d37a7c5236"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
"/private/tmp/thetree-prepare-integer-window-codec-null-script-r290.py": {
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-null-script-r290.py",
|
||||
"bytes": 2842,
|
||||
"sha256": "3225e506a35abc46acb5a7e38a7d80bdce22f3ad31e7a87d3c347bf15c4d0d6c"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/marshalls.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/marshalls.cpp",
|
||||
"bytes": 55439,
|
||||
"sha256": "183c43e46d3e4b73c0fb1fc8018da37faeb88c7414dd928b1fb6ff4f4a91a374"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/source.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/source.json",
|
||||
"bytes": 585,
|
||||
"sha256": "cbdfe256f152bc8f0c44b849848a94e3eec1e84d6a55f5da69188a6430a148a9"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json",
|
||||
"bytes": 14529,
|
||||
"sha256": "40b90fe5086d1bb468f14418657b946fac11615b46cdf66de5f0ccac832a8457"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json",
|
||||
"bytes": 10858,
|
||||
"sha256": "22e07864c1f7453c3eb38cb81e5bb189e48c9cbe2f31c507b75ce3c51c8174f5"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp",
|
||||
"bytes": 27906,
|
||||
"sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json",
|
||||
"bytes": 291,
|
||||
"sha256": "cd89af6dd2258fe71036edf9f92ce6302d823b68c257405e2a56795726e87834"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json",
|
||||
"bytes": 10950,
|
||||
"sha256": "bffbdcb491ba0aa68eeac764228c04418d2ef3834624cb1fcb98db773e8369fd"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref_counted.h": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref_counted.h",
|
||||
"bytes": 7628,
|
||||
"sha256": "05ef9e22f969dd4e93d5682e898b86e0ed646bf6d21a0225de9c7d68193bf074"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref-source.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref-source.json",
|
||||
"bytes": 306,
|
||||
"sha256": "633234e67598321413393912f4b52a51b191df5b4adc944d402b10ddd5cc27eb"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/typed_array.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/typed_array.hpp",
|
||||
"bytes": 6553,
|
||||
"sha256": "e501619ecd1489869c119c87b6738d6999f9b328bba86b5577023257acce5bbe"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/variant.hpp": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/variant.hpp",
|
||||
"bytes": 12723,
|
||||
"sha256": "323e24a2ef20c5e9a9ab13fb432e8c2aaceeef6907e6c51c80883642354228e3"
|
||||
}
|
||||
},
|
||||
"canonical_doc4_context_pins": {
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
},
|
||||
"pin_counts": {
|
||||
"direct": 21,
|
||||
"current_doc4": 4,
|
||||
"total": 25
|
||||
},
|
||||
"canonical_context": "r282 unchanged; HEAD checkpoint addition does not alter these four document bytes",
|
||||
"original_17_acceptance_changed": false,
|
||||
"adoption_accepted": false,
|
||||
"performance_accepted": false
|
||||
}
|
||||
+133
@@ -0,0 +1,133 @@
|
||||
{
|
||||
"passed": true,
|
||||
"review_sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5",
|
||||
"verified_entries": [
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_numeric_core.cpp",
|
||||
"bytes": 59396,
|
||||
"sha256": "75bc2f659f62889fccac5990461f5b51e8b87f30ca0791e4a4c542d37a7c5236"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r285-r02/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"bytes": 59737,
|
||||
"sha256": "f2156411713c341cce25f37728731b38dca6151b56dd9e848afa0531008527a0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_core.hpp",
|
||||
"bytes": 3299,
|
||||
"sha256": "be46852fe55aeee4e18996b4d87222662b031fd1b946977c81092f4d0707e480"
|
||||
},
|
||||
{
|
||||
"path": "/private/tmp/thetree-prepare-integer-window-codec-null-script-r290.py",
|
||||
"bytes": 2842,
|
||||
"sha256": "3225e506a35abc46acb5a7e38a7d80bdce22f3ad31e7a87d3c347bf15c4d0d6c"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/marshalls.cpp",
|
||||
"bytes": 55439,
|
||||
"sha256": "183c43e46d3e4b73c0fb1fc8018da37faeb88c7414dd928b1fb6ff4f4a91a374"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-source-r284/source.json",
|
||||
"bytes": 585,
|
||||
"sha256": "cbdfe256f152bc8f0c44b849848a94e3eec1e84d6a55f5da69188a6430a148a9"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-budget-record-candidate-r257-r04/performance_budget.candidate.gd",
|
||||
"bytes": 11250,
|
||||
"sha256": "1010129d3124c3aec037c840a5766a7cdabe60c654999dfb6f23b224140a73f8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-actual-independent-review-r282.json",
|
||||
"bytes": 14529,
|
||||
"sha256": "40b90fe5086d1bb468f14418657b946fac11615b46cdf66de5f0ccac832a8457"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/input.json",
|
||||
"bytes": 972003,
|
||||
"sha256": "65007d4405143a39492b889218687d9b83ddfd230560b543e3072918a192a0e1"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/execution.json",
|
||||
"bytes": 22195,
|
||||
"sha256": "aafa8d0b92e65ffc01ff0722f902106b6ad89f8919e751da410e22b7f67abc54"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r287/r257-r04-measurement/report.json",
|
||||
"bytes": 10858,
|
||||
"sha256": "22e07864c1f7453c3eb38cb81e5bb189e48c9cbe2f31c507b75ce3c51c8174f5"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/array.cpp",
|
||||
"bytes": 27906,
|
||||
"sha256": "ad9ebc6db6a962c817e2dbcee7f9c529dccd042090137e00dcf1a0594696f70b"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/source.json",
|
||||
"bytes": 291,
|
||||
"sha256": "cd89af6dd2258fe71036edf9f92ce6302d823b68c257405e2a56795726e87834"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"bytes": 6030,
|
||||
"sha256": "668930b0ed56cda8dfe692323e129575bba29697907727f671778871bd507560"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r285-r02.json",
|
||||
"bytes": 10950,
|
||||
"sha256": "bffbdcb491ba0aa68eeac764228c04418d2ef3834624cb1fcb98db773e8369fd"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r287.json",
|
||||
"bytes": 28577,
|
||||
"sha256": "ba871137bb6f4d6c73f34795b76e90fce6b53a2139b647620adf117d44fea0b8"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref_counted.h",
|
||||
"bytes": 7628,
|
||||
"sha256": "05ef9e22f969dd4e93d5682e898b86e0ed646bf6d21a0225de9c7d68193bf074"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-integer-window-codec-array-source-r289/ref-source.json",
|
||||
"bytes": 306,
|
||||
"sha256": "633234e67598321413393912f4b52a51b191df5b4adc944d402b10ddd5cc27eb"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/typed_array.hpp",
|
||||
"bytes": 6553,
|
||||
"sha256": "e501619ecd1489869c119c87b6738d6999f9b328bba86b5577023257acce5bbe"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-sdk-lifetime-candidate-r131/sdk/include/godot_cpp/variant/variant.hpp",
|
||||
"bytes": 12723,
|
||||
"sha256": "323e24a2ef20c5e9a9ab13fb432e8c2aaceeef6907e6c51c80883642354228e3"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
{
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/docs/plans/original-completion-2026-10-02/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
],
|
||||
"unit_accepted": false,
|
||||
"performance_accepted": false
|
||||
}
|
||||
+115
@@ -0,0 +1,115 @@
|
||||
{
|
||||
"before": {
|
||||
"IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/before/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492762,
|
||||
"sha256": "c2f4824ac3f47231395820ef792d88884a6d7c578f9f6c7b1379619c25fe7a01"
|
||||
},
|
||||
"PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/before/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410826,
|
||||
"sha256": "9eaf70befb9b94d0b890caef1d8afd8f6348a3b6621fd03d5fd469f9638806c0"
|
||||
},
|
||||
"work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/before/work_packages.json",
|
||||
"bytes": 1180547,
|
||||
"sha256": "f6538388b31fecba52276fe90dca327afc00a54ea530a8b4ecddfc87fd32ae7e"
|
||||
},
|
||||
"progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/before/progress_snapshot.json",
|
||||
"bytes": 529159,
|
||||
"sha256": "9a03b385c8e53570012a0e3b977a8c78a3cec11ea8d5f585841f5abff3c19517"
|
||||
}
|
||||
},
|
||||
"after": {
|
||||
"IMPLEMENTATION_PLAN.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/after/IMPLEMENTATION_PLAN.md",
|
||||
"bytes": 492299,
|
||||
"sha256": "61776f0673770277ab6d182107337ed40a108ff3b5ab2c1a8f29fc4f2c3015ad"
|
||||
},
|
||||
"PROGRESS_INTEGRATION.md": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/after/PROGRESS_INTEGRATION.md",
|
||||
"bytes": 410363,
|
||||
"sha256": "8b0488910dba35b34da96d7062b9a69d293e70a1963c9c5890ec32b2891baaea"
|
||||
},
|
||||
"work_packages.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/after/work_packages.json",
|
||||
"bytes": 1184337,
|
||||
"sha256": "32d80e911910bc762287dc3ddf0ee0ea3072ca2f0158aa2f9f355b9202cfdfeb"
|
||||
},
|
||||
"progress_snapshot.json": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-candidate-r294/after/progress_snapshot.json",
|
||||
"bytes": 539512,
|
||||
"sha256": "b417ee1b945dfe4666f3a2f3501f906756826ea88d741bb116f3dd20250c8958"
|
||||
}
|
||||
},
|
||||
"proofs": [
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
}
|
||||
},
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
}
|
||||
},
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"bytes": 40394,
|
||||
"sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"bytes": 21045,
|
||||
"sha256": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json",
|
||||
"bytes": 59147,
|
||||
"sha256": "147409de969918719f1682ff3bc537192a28d01837bfda6532ce4d1c292e9059"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/actual-root-verification.json",
|
||||
"bytes": 33521,
|
||||
"sha256": "61d1c24434347f25abbdb8d257da8eeb16e86307e6560a9a61102cd26f7974cf"
|
||||
}
|
||||
}
|
||||
],
|
||||
"matrix": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r294.json",
|
||||
"bytes": 53135,
|
||||
"sha256": "360747fb5ae1484b3e8b9eee30538ffe5d59a478c607dc55fe9606c42680a614"
|
||||
},
|
||||
"author": {
|
||||
"path": "/private/tmp/thetree-integrate-integer-window-codec-r294.py",
|
||||
"bytes": 15270,
|
||||
"sha256": "bc9b10e3f79f287f370c848d7e3026c72e83b2513104cb0657233374e640abe8"
|
||||
},
|
||||
"counts": {
|
||||
"completed": 9,
|
||||
"in_progress": 19,
|
||||
"planned": 60
|
||||
},
|
||||
"summary_before": "P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新局所/whole647検証済み実験候補はr274/library275(局所r278-r04、原S6影響/全保存同値r281を有限受理)で、単一同期1139564usは50ms未達・安定利益/P95/D10未証明。未変更版の性能反復と全回帰を増やさない。r272-r02はOS Call graphが空で診断未受入として履歴保持。r272-r03は実sampler開始banner後にreleaseし16threadの部分窓を採取、18/0・正常終了・全11,487,732bytes原oracle同値・source/default/stage/SUPPORT保護/復元を有限受理。r273-r04は既存object/SDKから別link1回、採取版と全14sectionsの配置/内容一致を独立確認し415native frameを88関数へ唯一範囲対応。重複inclusiveの行カウントからCPU比率・恒常原因・速度利益を推定しない。新候補r274/library275は原Runtimeの純粋なNeed relief/categoryタグ判定2メソッドだけを元call位置で直接翻訳、六key挿入順・全値/分岐優先を保持、毎回fresh Dictionary・memoなし。各位置のbuiltin/typed guardと元dynamic fallbackを静的受理し、SDK再コンパイル0・bridge compile1/link1・arm64 host build/strict/owned/保護を有限受理。r278-r04は同一library275をactual loadし、原15境界・タグ1028入力・実callback script変更2経路の局所比較を独立有限受理。全ordered typed候補・各入力の記録Path効果・独立所有を比較し、全Runtimeは原15境界とタグ空/全のみ比較。ticksはstairs150で実切替、pricingは元料金呼出中に実切替し元helper位置のdynamic fallback/countを確認。7358/0・strict0・所有PID16599正常終了・private/制作source/default/共有と親stage保護。r278早期継承拒否、r02 callback未到達の4失敗/SCRIPT ERROR/欠測、r03期待件数拒否は履歴保持。r280は元provider9関数の呼出を監査し、exact builtin・wellformed typed・同期処理内のfallback後context再利用を限定静的支持。並行変更/invalidObject/free/samepath偽装/一般再入所有は未認定。r281は同一274/library275で原S6影響24/0、直前265/266と同cold646/paused/speed1/同Budget257/原Pathのwhole各15/0・全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/全入力保護復元を独立有限受理。同期時間は直前1169815→新1139564usの隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。料金/重み/閾値/論理時刻/通知順/行動/会計/乱数/保存は変更しない。旧実験の詳細は既存版付き証拠・過去snapshot・今回before/previous_summaryへ保持。正式完了追加0。次はr274/library275の局所・原S6影響・全保存同値証拠を保持し、代表同期処理の50ms未達を解消する必要な関連修正を1件選ぶ。関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは後回し・免除なし。",
|
||||
"summary_after": "P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新の局所・原S6影響・whole647検証済み実験候補はr290/library291。r285-r02の整数Array符号化/追記・単一先頭削除候補は実校正を通らず、r287の4024/112失敗を拒否記録として保持。r290は型付きINT・空classのscript不在をNILまたはnull OBJECTだけ許す判定修復で、符号化・全4校正・元fallback・記録・閾値・通知・所有処理は親と同一。静的290とbridge compile1/link1・SDK再コンパイル0のhost291を独立有限受理。局所r292-r02は同一library291をactual loadし、原260-r02の同入力/設定/原1299stage/engine/fixture bodyを照合した有効な原結果を再利用、原Budget833行・6,589,288bytes全文一致と整数codec33ケース・4024/0を独立有限受理。整数28ケースは型付き/無型・read-only/可変・int32/int64境界・窓長0/1/2/9/511/512/513・返却bytesの変更隔離を実engine bytesと比較、非整数5ケースは拒否/無変更。説明3箇所の旧対象名による未実行r292拒否は履歴保持し、r02で説明だけ修復・試験基準不変・既存libraryコピー再利用。r293-r04は同一r290/library291で元S6/GameClock24/0、直前r274/library275と同cold646/paused/speed1/同Budget257一時patch/原Pathのwhole各15/0、全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/source/default/stage/SUPPORT保護復元を独立有限受理。同期時間1214852→1217932usは隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。料金/重み/閾値/論理時刻/行動/会計/乱数/保存は変更しない。r274/275の純タグ局所278-r04・whole281、同期builtin fallback静的280と他の旧実験詳細は版付き証拠・before/previous_summaryへ保持。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。Gitの実験checkpoint配下に空.gdignoreを置き、Budget class_nameが本体のresource走査へ混ざることを防止。正式完了追加0。次はr290/library291は今回の単発比較で性能改善を示さず追加codecの維持負担があるため不採用とし、次の性能修正元はr274/library275を保持する。r290/library291の局所・原S6影響・全保存同値証拠を保持し、代表同期負荷の必須性能未達を解消する関連修正を1件に絞る。未変更版の性能反復や全回帰を重複せず、関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは延期・未達・免除なし。",
|
||||
"formal_completed_added": 0,
|
||||
"unit_accepted": false
|
||||
}
|
||||
BIN
Binary file not shown.
+259
@@ -0,0 +1,259 @@
|
||||
{
|
||||
"plan_date_jst": "2026-10-02",
|
||||
"scope": "planning consistency and static baseline reconciliation; not game acceptance",
|
||||
"passed": true,
|
||||
"checks": [
|
||||
{
|
||||
"name": "all30_unique_package_ids",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "unique_delivery_ids",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "delivery_scope_and_acceptance",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "valid_delivery_states",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "completed_delivery_requires_evidence",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "linked_delivery_evidence_exists",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "known_dependency_ids",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "dependency_graph_acyclic",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "all75_original_groups_once",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "feature71_schedule4",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "coverage_known_packages",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "coverage_known_delivery_ids",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "coverage_exact_package_deliveries",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "package_and_requirement_mapping_agree",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "source_lines_preserved",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "old_status_not_promoted",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "all10_facility_supplements",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "P09_owns10_supplements",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "all10_pending_decision_groups",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "known_decision_references",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "all5_confirmed_decisions",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "confirmed_decision_references_exist",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "valid_package_states",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "new_completed_packages_require_evidence",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "acceptance_conditions_not_claimed_results",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "initial_revision_history_preserved",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "progress_contract8_views",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "progress_no_partial_credit",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "frozen_denominator_has_register",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "known_denominator_matches_frozen_register",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "progress_register_pin_matches",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "evidence_index_register_pin_matches",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "progress_index_pin_matches",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "known_counts_match_freeze",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "unresolved_final_denominator_not_reported_as_total",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "static_leads_not_whole_atom_acceptance",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "declared_limited_views_whole_atoms_unreviewed",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "regression_evidence_pin_matches",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "regression_source_time_scope_preserved",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "P01_P03_not_whole_package_completed",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "progress_schedule_excluded",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "baseline_materials_exist",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "retained_regression155_12310",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "new_game_tests_not_claimed",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "all_package_headings",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "all_group_rows",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "all_delivery_ids_in_document",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "encyclopedia_and_hero_rival_scope",
|
||||
"passed": true
|
||||
},
|
||||
{
|
||||
"name": "current_native_and_longplay_not_claimed",
|
||||
"passed": true
|
||||
}
|
||||
],
|
||||
"failed_checks": [],
|
||||
"packages": 30,
|
||||
"remaining_delivery_units": 88,
|
||||
"current_package_state_counts": {
|
||||
"completed": 1,
|
||||
"in_progress": 25,
|
||||
"planned": 4
|
||||
},
|
||||
"initial_snapshot_checked": false,
|
||||
"historical_source_bytes_compared": false,
|
||||
"covered_original_groups": 75,
|
||||
"missing_original_group_ids": [],
|
||||
"facility_supplements": 10,
|
||||
"atomic_denominator": null,
|
||||
"known_condition_denominator": 1291,
|
||||
"final_denominator_established": false,
|
||||
"total_game_implementation_percent": null,
|
||||
"total_game_acceptance_percent": null,
|
||||
"new_game_execution_count": 0,
|
||||
"document_sha256": {
|
||||
"ASSETS_PLATFORM_AUDIT.md": "a3a4b8ca0fb39a9abf88692285d26aa879815e092352ba304ef2758e71da50bd",
|
||||
"ATOMIC_REGISTER.md": "6070143b85b7c3b9b73d7c9768d88d2dae4d20407ad54a563cb6ffd74f2373ae",
|
||||
"ATOMIC_SEMANTIC_REVIEW.md": "c156b1fb57c2b4a900f27a19049510f3e9616e723d5edb3417f50d733de5be48",
|
||||
"IMPLEMENTATION_PLAN.md": "61776f0673770277ab6d182107337ed40a108ff3b5ab2c1a8f29fc4f2c3015ad",
|
||||
"IMPORT_UNICODE_AUDIT.md": "88b2382bfbb3411fece8be7e6004ba21d8bf6a47e9d1f3cf573ea6638f79c12f",
|
||||
"P09_VALUE_CONTRACTS.md": "c5abdc4543e54033b1fcfd0943cba266f664d8c10968965fd36ade40da488a25",
|
||||
"PERFORMANCE_AUDIT.md": "c75e806acf825fc4a61f773a2cce7e71be335a1e25dbb15d98091097e8dc47c1",
|
||||
"PROGRESS_INTEGRATION.md": "8b0488910dba35b34da96d7062b9a69d293e70a1963c9c5890ec32b2891baaea",
|
||||
"REVIEW.md": "6665259dfd53be86e113aee502818104dbdb5497da9c817790a24338a4689316",
|
||||
"RUNTIME_SAVE_AUDIT.md": "e88ae014c6154c7aaade5835afc2113f79ee4a4ca5a015c28a4976f8ead68883",
|
||||
"assets_platform_audit.json": "a9fabd989d03071c6af6dc828fff4f021e1ece9638857c54115997923af68d77",
|
||||
"atomic_denominator_freeze.json": "467e960eb0fe47241edb217f5fa2044f2de304441daf9e51a7b0cb46ffa9194d",
|
||||
"atomic_requirements.json": "44530bb929fcc8c68c06d0d94da66dd04b8db7680af731b5037cd44677502938",
|
||||
"atomic_requirements_validation.json": "8dc300b099cfd90fda862f138b6a528d01e9c488a2c67fe07a00a92a70f99175",
|
||||
"atomic_semantic_review.json": "e300b57f22ab86aa8029ce97231fcff0d7530fd4a9134988f113a46498ada7ad",
|
||||
"baseline.json": "750bb3d313cc5e2ce0d4c79e563a995abd7a78f991dee1dd75c627877b02cd7b",
|
||||
"build_atomic_requirements.py": "6d6ea9e4216372dbd0f9fed3f885a4481b21a3f539a26f64cf98a6830af984c5",
|
||||
"build_facility_value_contracts.py": "35027b23ce75ce9e4e0cdfc5132fd2eb771ba9f598d97750d7ecf9ecb257f769",
|
||||
"current_evidence_links.json": "db1837bcc8497201134297e312f4b266a297102285307ec3075d4e23632e26c2",
|
||||
"decisions.json": "ad0673051b0fa601e525f05128e0b11e2dddd9d4bae6a3e0170bbf47da35efe9",
|
||||
"facility_value_contracts.json": "447388ba03a29bfac25f2bcd068665aedbb07ba7641ce86f2db93d44f4c9f326",
|
||||
"facility_value_contracts_validation.json": "bf490a9ca585c48fc318e76c4a069ef244827d828d46e6415399f7710590dd16",
|
||||
"performance_audit.json": "0b630b15a392c3e0366f1362bfe4ddacb968f915f54549f82e4d6fa315384762",
|
||||
"progress_contract.json": "ccbdfce8c8365d5c13f59531955708834cce45acd0e136561c95295dfdb5df77",
|
||||
"progress_snapshot.json": "b417ee1b945dfe4666f3a2f3501f906756826ea88d741bb116f3dd20250c8958",
|
||||
"progress_validator_guard_checks.json": "72ee513fcf1cad85c24bfd0a4b472f425f6acf117928ece0f6b41e29018da627",
|
||||
"progress_validator_guard_checks.r01.json": "14c26adffa5a1938241db4912e50ea54b660641ee6fee2e412d467dce14d0519",
|
||||
"requirement_coverage.json": "8b5788b22ae8f49ea7e5cf048a5f0d82b54f6f193623465e0b70496b5aadd09d",
|
||||
"runtime_save_audit.json": "0c0c3724371c99bc9a2a80378b30d51fec7d3d9499da02e0d6dfeaf99f01de00",
|
||||
"source_atomic_coverage.json": "2ab7b9e6a2536ef248d4f7ccd695bf75a082b47018aca7a5a1b6b706fe1907bc",
|
||||
"validate_atomic_requirements.py": "5b2d0b7d72cb124830fbb0a12d1434e6db698148cc5263d33fd5bd7c2953a1e0",
|
||||
"validate_facility_value_contracts.py": "91640e2a76cd6cc9186f7b85c0bf379b24b6cac0d48962815235ee628e7ae43e",
|
||||
"validate_plan.py": "23678227d9b3c556f1bd903f4b5b3147c4a82ce5085e10055481026803451b80",
|
||||
"validator_update_checks.json": "f997d0f3de2cea29550840b1d5cb23647d64f81329de46758551e2b6c8fecc27",
|
||||
"work_packages.json": "32d80e911910bc762287dc3ddf0ee0ea3072ca2f0158aa2f9f355b9202cfdfeb"
|
||||
}
|
||||
}
|
||||
+64
@@ -0,0 +1,64 @@
|
||||
# coding: utf-8
|
||||
from pathlib import Path
|
||||
import collections,contextlib,datetime,importlib.util,io,runpy,shutil,sys
|
||||
sys.dont_write_bytecode=True
|
||||
R=Path('/Users/korizatou114/Projects/とりにく工房ゲーム制作部');A=R/'artifacts/original-completion-2026-10-02';D=R/'docs/plans/original-completion-2026-10-02';C=A/'p23-02-progress-integration-candidate-r294';O=A/'p23-02-progress-integration-r294';names=['IMPLEMENTATION_PLAN.md','PROGRESS_INTEGRATION.md','work_packages.json','progress_snapshot.json']
|
||||
s=importlib.util.spec_from_file_location('int294',R/'tools/run_all_tests.py');r=importlib.util.module_from_spec(s);s.loader.exec_module(r)
|
||||
def pin(p):return dict(path=str(p),bytes=p.stat().st_size,sha256=r.sha(p))
|
||||
proofs=[]
|
||||
for review,root,flags in [
|
||||
(A/'p23-02-native-integer-window-codec-static-independent-review-r290.json',A/'p23-02-native-integer-window-codec-static-root-verification-r290.json',['implementation_supported']),
|
||||
(A/'p23-02-native-integer-window-codec-build-actual-independent-review-r291.json',A/'p23-02-native-integer-window-codec-build-root-verification-r291.json',['host_build_accepted']),
|
||||
(A/'p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json',A/'p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json',['finite_local_equivalence_accepted','codec_equivalence_accepted']),
|
||||
(A/'p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json',A/'p23-02-native-integer-window-codec-impact-whole-r293-r04/actual-root-verification.json',['finite_s6_impact_accepted','finite_whole647_equivalence_accepted','finite_exit_observation_accepted'])]:
|
||||
v=r.read(review);assert not v['blockers'] and all(v[k] for k in flags);assert r.read(root)['passed'] and r.read(root)['review_sha256']==r.sha(review);proofs.append(dict(review=pin(review),root=pin(root)))
|
||||
assert not C.exists() and not O.exists();source=r.source_refs(R);player=r.default_player(R);historical=r.sha(D/'plan_validation.json');C.mkdir();(C/'before').mkdir();(C/'after').mkdir();O.mkdir()
|
||||
for n in names:shutil.copyfile(D/n,C/'before'/n)
|
||||
packages=r.read(D/'work_packages.json');snapshot=r.read(D/'progress_snapshot.json');original_packages=r.read(D/'work_packages.json');pkg=next(p for p in packages if p['id']=='P23');unit=next(u for u in pkg['remaining_deliverables'] if u['id']=='P23-02');old=unit['progress_summary'];execution=r.read(A/'p23-02-native-integer-window-codec-impact-whole-r293-r04/execution.json');assert execution['passed'];pair=execution['pairs'][0]
|
||||
next_action='r290/library291は今回の単発比較で性能改善を示さず追加codecの維持負担があるため不採用とし、次の性能修正元はr274/library275を保持する。r290/library291の局所・原S6影響・全保存同値証拠を保持し、代表同期負荷の必須性能未達を解消する関連修正を1件に絞る。未変更版の性能反復や全回帰を重複せず、関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは延期・未達・免除なし。'
|
||||
budget_note='50ms未達' if pair['candidate_us']>=50000 else '50ms未満の単発観測だが必須性能全条件は未受入'
|
||||
new='P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新の局所・原S6影響・whole647検証済み実験候補はr290/library291。r285-r02の整数Array符号化/追記・単一先頭削除候補は実校正を通らず、r287の4024/112失敗を拒否記録として保持。r290は型付きINT・空classのscript不在をNILまたはnull OBJECTだけ許す判定修復で、符号化・全4校正・元fallback・記録・閾値・通知・所有処理は親と同一。静的290とbridge compile1/link1・SDK再コンパイル0のhost291を独立有限受理。局所r292-r02は同一library291をactual loadし、原260-r02の同入力/設定/原1299stage/engine/fixture bodyを照合した有効な原結果を再利用、原Budget833行・6,589,288bytes全文一致と整数codec33ケース・4024/0を独立有限受理。整数28ケースは型付き/無型・read-only/可変・int32/int64境界・窓長0/1/2/9/511/512/513・返却bytesの変更隔離を実engine bytesと比較、非整数5ケースは拒否/無変更。説明3箇所の旧対象名による未実行r292拒否は履歴保持し、r02で説明だけ修復・試験基準不変・既存libraryコピー再利用。r293-r04は同一r290/library291で元S6/GameClock24/0、直前r274/library275と同cold646/paused/speed1/同Budget257一時patch/原Pathのwhole各15/0、全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/source/default/stage/SUPPORT保護復元を独立有限受理。同期時間%d→%dusは隣接単発観測のみで、%s・安定利益/P95/D10未証明。料金/重み/閾値/論理時刻/行動/会計/乱数/保存は変更しない。r274/275の純タグ局所278-r04・whole281、同期builtin fallback静的280と他の旧実験詳細は版付き証拠・before/previous_summaryへ保持。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。Gitの実験checkpoint配下に空.gdignoreを置き、Budget class_nameが本体のresource走査へ混ざることを防止。正式完了追加0。次は%s'%(pair['baseline_us'],pair['candidate_us'],budget_note,next_action)
|
||||
pkg['current_summary']=new;unit['progress_summary']=new;stamp=datetime.datetime.now().astimezone().isoformat();pkg['updated_at_jst']=stamp;unit['updated_at_jst']=stamp
|
||||
prior=A/'p23-02-current-progress-disposition-r282.json';matrix=A/'p23-02-current-progress-disposition-r294.json';m=r.read(prior);m['historical_candidate_fields_before_r294']={k:m[k] for k in ['source_candidate','candidate_input','library','latest_implementation_candidate','latest_implementation_candidate_input','latest_implementation_library','latest_local_validated_trial','latest_local_candidate_input','latest_local_library','latest_whole_validated_trial','latest_whole_candidate_input','latest_whole_library','next_implementation_parent','next_implementation_parent_input','next_implementation_parent_library']}
|
||||
ci=pin(A/'p23-02-native-integer-window-codec-candidate-r290/input.json');lib=pin(A/'p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib');cpp=pin(A/'p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp')
|
||||
parent_fields={k:m[k] for k in ['latest_implementation_candidate','latest_implementation_candidate_input','latest_implementation_library','next_implementation_parent','next_implementation_parent_input','next_implementation_parent_library']};parent_source=pin(A/'p23-02-native-pure-tag-projection-candidate-r274/source/tree_numeric_core.cpp')
|
||||
m.update(source_previous_matrix=pin(prior),next_action=next_action,source_candidate='r290/library291 finite local292-r02 and originalS6/whole293-r04; performance unmet, unselected and unadopted',candidate_input=ci,library=lib,latest_implementation_candidate='r290/library291 finite local292-r02 and originalS6/whole293-r04',latest_implementation_candidate_input=ci,latest_implementation_library=lib,latest_local_validated_trial='r290/library291 finite Budget+integercodec local292-r02',latest_local_candidate_input=ci,latest_local_library=lib,latest_locally_validated_candidate='r290/library291 finite292-r02',latest_whole_validated_trial='r290/library291 finite originalS6/whole293-r04',latest_whole_validated_candidate='r290/library291 finite293-r04',latest_whole_candidate_input=ci,latest_whole_library=lib,next_implementation_parent='r290/library291 private candidate finite local292-r02 and S6/whole293-r04; unadopted/performance unmet',next_implementation_parent_input=ci,next_implementation_parent_library=lib,next_implementation_parent_source=cpp,next_test_candidate='One necessary related performance change against r290/library291 then coherent final-version mandatory validation',native_trial_stage_status='local292-r02 and whole293-r04 reused shared209/parent239 original1299; Budget257 transient and project restored after owned exit; no production290 stage created')
|
||||
m.update(parent_fields);m['next_implementation_parent_source']=parent_source;m['next_test_candidate']='One necessary performance change against retained r274/library275 then final-version mandatory validation';m['declined_trial']=dict(candidate_input=ci,library=lib,single_pair=pair,reason='No improvement demonstrated in the single adjacent pair; stable performance benefit unproved and optional codec adds maintenance complexity',stable_regression_claimed=False,candidate_adopted=False)
|
||||
for name,p in [('integer_codec_static',proofs[0]),('integer_codec_host',proofs[1]),('integer_codec_local',proofs[2]),('integer_codec_impact_whole',proofs[3])]:m['finite_evidence'][name]=p['review'];m['finite_evidence'][name+'_root']=p['root']
|
||||
for name,p in [('integer_codec_rejected_local287',A/'p23-02-native-integer-window-codec-local-actual-independent-review-r287.json'),('integer_codec_rejected_preparation292',A/'p23-02-native-integer-window-codec-local-preexecution-independent-review-r292.json')]:m['finite_evidence'][name]=pin(p)
|
||||
missing='Latest r290/library291 finite local292-r02 and original S6/whole293-r04 accepted. Single whole tick%dus; %s. Stable gain/P95/D10/50ms final performance, final172, general reentry/provider ownership, normal OS/realtime x3/exit/small-screen/same Windows and original17 remain unaccepted. Old287 codec failure and 292 metadata rejection retained; experimental codec declined, next implementation parent r274/library275 retained; no stable regression claim or adoption.'%(pair['candidate_us'],budget_note)
|
||||
for q in m['conditions']:
|
||||
if q['id'] in ['C09','X5','X7']:q['current_missing']=missing
|
||||
assert len(m['conditions'])==17 and all(not q['accepted'] for q in m['conditions']) and m['Windows_only_blocked_ids']==['C08','X8'];r.write(matrix,m)
|
||||
# Update active residual fields, retaining every historical field unchanged.
|
||||
for xs in [unit['remaining_gaps'],snapshot['next_single_delivery_unit']['missing']]:
|
||||
for q in xs:
|
||||
if q['id']=='C09':q['conditions']=[missing,'原詳細・旧版条件はhistorical fieldsと旧matrixへ保持。']
|
||||
elif q['id']=='cross-cutting-final-candidate':q['conditions']=[new if xs is unit['remaining_gaps'] else '原17条件を同一最終版で受入。最新版付き有限証拠と未達はr294 matrixへ保持。']
|
||||
for proof in proofs:
|
||||
for p in [Path(proof['review']['path']),Path(proof['root']['path'])]:unit['evidence'].append(dict(path=str(p.relative_to(R)),sha256_at_integration=r.sha(p),scope='Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance',linked_at_jst=stamp,current_game_acceptance_inferred=False))
|
||||
unit['evidence'].append(dict(path=str(matrix.relative_to(R)),sha256_at_integration=r.sha(matrix),scope='Current17 unaccepted conditions and versioned finite evidence, no partial credit',linked_at_jst=stamp,current_game_acceptance_inferred=False));unit['acceptance_matrix_reference']=str(matrix)
|
||||
nu=snapshot['next_single_delivery_unit'];assert nu['id']=='P23-02';nu['historical_trial_source_fields_before_r294']={k:nu.get(k) for k in ['unselected_trial_candidate_source','unselected_trial_candidate_input','unselected_trial_candidate_library','next_implementation_parent_source','next_implementation_parent_input']};nu.update(acceptance_matrix_reference=str(matrix),progress_evidence=str(matrix),native_trial_stage_status=m['native_trial_stage_status'],unselected_trial_candidate_source=str(cpp['path']),unselected_trial_candidate_input=str(ci['path']),unselected_trial_candidate_library=str(lib['path']),next_implementation_parent_source=str(parent_source['path']),next_implementation_parent_input=m['next_implementation_parent_input']['path']);nu['unselected_trial_evidence'].extend(p['review']['path'] for p in proofs)
|
||||
key='p23_02_native_integer_window_codec_integration_r294';snapshot['p23_02_native_pure_tag_whole_integration_r282']['superseded_by']=key;snapshot[key]=dict(prior_integration='p23_02_native_pure_tag_whole_integration_r282',previous_summary=old,proofs=proofs,acceptance_matrix=pin(matrix),next_action=next_action,finite_local_accepted=True,codec_equivalence_accepted=True,finite_s6_impact_accepted=True,finite_whole647_equivalence_accepted=True,latest_whole_candidate='r290/library291 finite293-r04',single_timing_pair=pair,stable_gain_supported=False,stall_budget_met=False,candidate_adopted=False,formal_completed_added=0,unit_accepted=False,whole_goal_accepted=False)
|
||||
r.write(C/'after/work_packages.json',packages);r.write(C/'after/progress_snapshot.json',snapshot)
|
||||
for n in names[:2]:
|
||||
t=(C/'before'/n).read_text();assert t.count(old)==1;(C/'after'/n).write_text(t.replace(old,new,1).replace('2026-10-12・r282証拠統合','2026-10-12・r294証拠統合',1))
|
||||
counts=collections.Counter(u['state'] for p in packages for u in p['remaining_deliverables']);assert len(packages)==30 and dict(counts)=={'completed':9,'in_progress':19,'planned':60}
|
||||
for p,q in zip(original_packages,packages):
|
||||
if p['id']!='P23':assert p==q
|
||||
else:
|
||||
for u,v in zip(p['remaining_deliverables'],q['remaining_deliverables']):
|
||||
if u['id']!='P23-02':assert u==v
|
||||
r.write(C/'input.json',dict(before={n:pin(C/'before'/n) for n in names},after={n:pin(C/'after'/n) for n in names},proofs=proofs,matrix=pin(matrix),author=pin(Path(__file__)),counts=dict(counts),summary_before=old,summary_after=new,formal_completed_added=0,unit_accepted=False))
|
||||
original_write=Path.write_text;stdout=io.StringIO()
|
||||
try:
|
||||
for n in names:assert (D/n).read_bytes()==(C/'before'/n).read_bytes();shutil.copyfile(C/'after'/n,D/n)
|
||||
def routed(p,data,*args,**kwargs):return original_write(O/'plan_validation.json' if p==D/'plan_validation.json' else p,data,*args,**kwargs)
|
||||
Path.write_text=routed;sys.argv=[str(D/'validate_plan.py')]
|
||||
with contextlib.redirect_stdout(stdout):runpy.run_path(str(D/'validate_plan.py'),run_name='__main__')
|
||||
val=r.read(O/'plan_validation.json');assert val['passed'] and len(val['checks'])==49 and not val['failed_checks'];assert r.source_refs(R)==source and r.default_player(R)==player and r.sha(D/'plan_validation.json')==historical
|
||||
except BaseException:
|
||||
for n in names:shutil.copyfile(C/'before'/n,D/n)
|
||||
raise
|
||||
finally:Path.write_text=original_write
|
||||
r.write(O/'execution.json',dict(passed=True,canonical_after={n:pin(D/n) for n in names},source_before=source,source_after_equal=True,default_before=player,default_after_equal=True,historical_validator_receipt_preserved=True,validation=dict(checks=49,failures=0),counts=dict(counts),formal_completed_added=0,source_edits=0,engine_processes=0,unit_accepted=False,whole_goal_accepted=False));print(dict(applied=True,checks=49,failures=0,formal_completed_added=0))
|
||||
BIN
Binary file not shown.
BIN
Binary file not shown.
+22
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"scope": "Post-application independent metadata and checkpoint review only; unit and performance unaccepted",
|
||||
"encoding": "gzip",
|
||||
"entries": [
|
||||
{
|
||||
"path": "p23-02-progress-integration-independent-review-r294.json.gz",
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-independent-review-r294.json",
|
||||
"bytes": 541551,
|
||||
"sha256": "dab4b6003f2038c7136e3a29a12ec437d58513f5c4dd04b067965253acedae65",
|
||||
"compressed_bytes": 80421,
|
||||
"compressed_sha256": "535890a66d832d8ccff2f929ea92a20d58ce67ed627632236215a55c62af887a"
|
||||
},
|
||||
{
|
||||
"path": "p23-02-progress-integration-root-verification-r294.json.gz",
|
||||
"original_path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-progress-integration-root-verification-r294.json",
|
||||
"bytes": 364140,
|
||||
"sha256": "bfba70316ba4ab62af72e7e405644b2891cbf62aeb8d42d6bf15e397af30a5c5",
|
||||
"compressed_bytes": 72381,
|
||||
"compressed_sha256": "ef63fcf85181ac4f1d4786744ab7baf11158fbd000c64422afd18f09e95b2518"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -5327,8 +5327,8 @@
|
||||
{
|
||||
"id": "C09",
|
||||
"conditions": [
|
||||
"Latest257-r04/library258-r02 native load/local260-r02, original S6/GameClock impact and whole647262 finite accepted. Single1249740→1178137us/5.729431721798134% exploratory shortening is not stable gain/P95/D10; 1178137us exceeds50ms. Final172/original17/normal OS/realtime x3/exit/small-screen/same Windows distribution remain unmet. Candidate unadopted; original239/240 implementation parent retained, old248 declined history preserved.",
|
||||
"原条件詳細はhistorical_conditions_before_r263-r02と旧matrixへ保持。"
|
||||
"Latest r290/library291 finite local292-r02 and original S6/whole293-r04 accepted. Single whole tick1217932us; 50ms未達. Stable gain/P95/D10/50ms final performance, final172, general reentry/provider ownership, normal OS/realtime x3/exit/small-screen/same Windows and original17 remain unaccepted. Old287 codec failure and 292 metadata rejection retained; experimental codec declined, next implementation parent r274/library275 retained; no stable regression claim or adoption.",
|
||||
"原詳細・旧版条件はhistorical fieldsと旧matrixへ保持。"
|
||||
],
|
||||
"historical_conditions": [
|
||||
"r06小規模営業ON実時間x3の通常操作証拠は履歴/不変適用範囲のみ保持。制作r32と最終採用候補の応答追随・原操作/Windowsを最終受入へ整合する。",
|
||||
@@ -5378,7 +5378,7 @@
|
||||
{
|
||||
"id": "cross-cutting-final-candidate",
|
||||
"conditions": [
|
||||
"原17条件を同一最終版で受入。有限229と未達をr230 matrixへ保持。"
|
||||
"原17条件を同一最終版で受入。最新版付き有限証拠と未達はr294 matrixへ保持。"
|
||||
],
|
||||
"historical_conditions": [
|
||||
"P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新局所/whole647検証済み実験候補はr274/library275(局所r278-r04、原S6影響/全保存同値r281を有限受理)で、単一同期1139564usは50ms未達・安定利益/P95/D10未証明。未変更版の性能反復と全回帰を増やさない。r272-r02はOS Call graphが空で診断未受入として履歴保持。r272-r03は実sampler開始banner後にreleaseし16threadの部分窓を採取、18/0・正常終了・全11,487,732bytes原oracle同値・source/default/stage/SUPPORT保護/復元を有限受理。r273-r04は既存object/SDKから別link1回、採取版と全14sectionsの配置/内容一致を独立確認し415native frameを88関数へ唯一範囲対応。重複inclusiveの行カウントからCPU比率・恒常原因・速度利益を推定しない。新候補r274/library275は原Runtimeの純粋なNeed relief/categoryタグ判定2メソッドだけを元call位置で直接翻訳、六key挿入順・全値/分岐優先を保持、毎回fresh Dictionary・memoなし。各位置のbuiltin/typed guardと元dynamic fallbackを静的受理し、SDK再コンパイル0・bridge compile1/link1・arm64 host build/strict/owned/保護を有限受理。r278-r04は同一library275をactual loadし、原15境界・タグ1028入力・実callback script変更2経路の局所比較を独立有限受理。全ordered typed候補・各入力の記録Path効果・独立所有を比較し、全Runtimeは原15境界とタグ空/全のみ比較。ticksはstairs150で実切替、pricingは元料金呼出中に実切替し元helper位置のdynamic fallback/countを確認。7358/0・strict0・所有PID16599正常終了・private/制作source/default/共有と親stage保護。r278早期継承拒否、r02 callback未到達の4失敗/SCRIPT ERROR/欠測、r03期待件数拒否は履歴保持。r280は元provider9関数の呼出を監査し、exact builtin・wellformed typed・同期処理内のfallback後context再利用を限定静的支持。並行変更/invalidObject/free/samepath偽装/一般再入所有は未認定。r281は同一274/library275で原S6影響24/0、直前265/266と同cold646/paused/speed1/同Budget257/原Pathのwhole各15/0・全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/全入力保護復元を独立有限受理。同期時間は直前1169815→新1139564usの隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。料金/重み/閾値/論理時刻/通知順/行動/会計/乱数/保存は変更しない。旧実験の詳細は既存版付き証拠・過去snapshot・今回before/previous_summaryへ保持。正式完了追加0。次はr274/library275の局所・原S6影響・全保存同値証拠を保持し、代表同期処理の50ms未達を解消する必要な関連修正を1件選ぶ。関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは後回し・免除なし。"
|
||||
@@ -5401,7 +5401,7 @@
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-01-layer-root-review-r02/related-regression-reuse.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-01-layer-root-review-r02/representative-performance-reuse.json"
|
||||
],
|
||||
"progress_evidence": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r282.json",
|
||||
"progress_evidence": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r294.json",
|
||||
"target_candidate_stage": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-single-index-lookup-candidate-r62/stage",
|
||||
"production_adopted": true,
|
||||
"working_candidate_adopted": false,
|
||||
@@ -5446,21 +5446,32 @@
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-static-independent-review-r274.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-actual-independent-review-r275.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-local-actual-independent-review-r278-r04.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-actual-independent-review-r281.json"
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-impact-whole-actual-independent-review-r281.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json"
|
||||
],
|
||||
"unselected_trial_accepted_as_unit": false,
|
||||
"acceptance_matrix_reference": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r282.json",
|
||||
"acceptance_matrix_reference": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r294.json",
|
||||
"next_implementation_parent_stage": null,
|
||||
"historical_native_trial_stage_r276": {
|
||||
"unselected_trial_candidate_stage": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage",
|
||||
"next_implementation_parent_stage": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-local-names-candidate-r239/stage"
|
||||
},
|
||||
"unselected_trial_candidate_source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source",
|
||||
"unselected_trial_candidate_input": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"unselected_trial_candidate_library": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"next_implementation_parent_source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source",
|
||||
"unselected_trial_candidate_source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/source/tree_numeric_core.cpp",
|
||||
"unselected_trial_candidate_input": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-candidate-r290/input.json",
|
||||
"unselected_trial_candidate_library": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-r291/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"next_implementation_parent_source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source/tree_numeric_core.cpp",
|
||||
"next_implementation_parent_input": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"native_trial_stage_status": "local278-r04 and whole281 used shared209 stage and parent239 original1299; Budget257 transient for whole281 restored; no r274 production stage created"
|
||||
"native_trial_stage_status": "local292-r02 and whole293-r04 reused shared209/parent239 original1299; Budget257 transient and project restored after owned exit; no production290 stage created",
|
||||
"historical_trial_source_fields_before_r294": {
|
||||
"unselected_trial_candidate_source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source",
|
||||
"unselected_trial_candidate_input": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json",
|
||||
"unselected_trial_candidate_library": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-build-r275/libtree_numeric_core.macos.template_debug.dylib",
|
||||
"next_implementation_parent_source": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/source",
|
||||
"next_implementation_parent_input": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-pure-tag-projection-candidate-r274/input.json"
|
||||
}
|
||||
},
|
||||
"current_P14_01_contract_audit": {
|
||||
"audit": "artifacts/original-completion-2026-10-02/p14-01-current-contract-audit-r01/audit.json",
|
||||
@@ -8825,6 +8836,85 @@
|
||||
"candidate_adopted": false,
|
||||
"formal_completed_added": 0,
|
||||
"unit_accepted": false,
|
||||
"whole_goal_accepted": false,
|
||||
"superseded_by": "p23_02_native_integer_window_codec_integration_r294"
|
||||
},
|
||||
"p23_02_native_integer_window_codec_integration_r294": {
|
||||
"prior_integration": "p23_02_native_pure_tag_whole_integration_r282",
|
||||
"previous_summary": "P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新局所/whole647検証済み実験候補はr274/library275(局所r278-r04、原S6影響/全保存同値r281を有限受理)で、単一同期1139564usは50ms未達・安定利益/P95/D10未証明。未変更版の性能反復と全回帰を増やさない。r272-r02はOS Call graphが空で診断未受入として履歴保持。r272-r03は実sampler開始banner後にreleaseし16threadの部分窓を採取、18/0・正常終了・全11,487,732bytes原oracle同値・source/default/stage/SUPPORT保護/復元を有限受理。r273-r04は既存object/SDKから別link1回、採取版と全14sectionsの配置/内容一致を独立確認し415native frameを88関数へ唯一範囲対応。重複inclusiveの行カウントからCPU比率・恒常原因・速度利益を推定しない。新候補r274/library275は原Runtimeの純粋なNeed relief/categoryタグ判定2メソッドだけを元call位置で直接翻訳、六key挿入順・全値/分岐優先を保持、毎回fresh Dictionary・memoなし。各位置のbuiltin/typed guardと元dynamic fallbackを静的受理し、SDK再コンパイル0・bridge compile1/link1・arm64 host build/strict/owned/保護を有限受理。r278-r04は同一library275をactual loadし、原15境界・タグ1028入力・実callback script変更2経路の局所比較を独立有限受理。全ordered typed候補・各入力の記録Path効果・独立所有を比較し、全Runtimeは原15境界とタグ空/全のみ比較。ticksはstairs150で実切替、pricingは元料金呼出中に実切替し元helper位置のdynamic fallback/countを確認。7358/0・strict0・所有PID16599正常終了・private/制作source/default/共有と親stage保護。r278早期継承拒否、r02 callback未到達の4失敗/SCRIPT ERROR/欠測、r03期待件数拒否は履歴保持。r280は元provider9関数の呼出を監査し、exact builtin・wellformed typed・同期処理内のfallback後context再利用を限定静的支持。並行変更/invalidObject/free/samepath偽装/一般再入所有は未認定。r281は同一274/library275で原S6影響24/0、直前265/266と同cold646/paused/speed1/同Budget257/原Pathのwhole各15/0・全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/全入力保護復元を独立有限受理。同期時間は直前1169815→新1139564usの隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。料金/重み/閾値/論理時刻/通知順/行動/会計/乱数/保存は変更しない。旧実験の詳細は既存版付き証拠・過去snapshot・今回before/previous_summaryへ保持。正式完了追加0。次はr274/library275の局所・原S6影響・全保存同値証拠を保持し、代表同期処理の50ms未達を解消する必要な関連修正を1件選ぶ。関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは後回し・免除なし。",
|
||||
"proofs": [
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"bytes": 15003,
|
||||
"sha256": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"bytes": 7670,
|
||||
"sha256": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a"
|
||||
}
|
||||
},
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"bytes": 39566,
|
||||
"sha256": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"bytes": 22646,
|
||||
"sha256": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126"
|
||||
}
|
||||
},
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"bytes": 40394,
|
||||
"sha256": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"bytes": 21045,
|
||||
"sha256": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"review": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json",
|
||||
"bytes": 59147,
|
||||
"sha256": "147409de969918719f1682ff3bc537192a28d01837bfda6532ce4d1c292e9059"
|
||||
},
|
||||
"root": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/actual-root-verification.json",
|
||||
"bytes": 33521,
|
||||
"sha256": "61d1c24434347f25abbdb8d257da8eeb16e86307e6560a9a61102cd26f7974cf"
|
||||
}
|
||||
}
|
||||
],
|
||||
"acceptance_matrix": {
|
||||
"path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r294.json",
|
||||
"bytes": 53135,
|
||||
"sha256": "360747fb5ae1484b3e8b9eee30538ffe5d59a478c607dc55fe9606c42680a614"
|
||||
},
|
||||
"next_action": "r290/library291は今回の単発比較で性能改善を示さず追加codecの維持負担があるため不採用とし、次の性能修正元はr274/library275を保持する。r290/library291の局所・原S6影響・全保存同値証拠を保持し、代表同期負荷の必須性能未達を解消する関連修正を1件に絞る。未変更版の性能反復や全回帰を重複せず、関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは延期・未達・免除なし。",
|
||||
"finite_local_accepted": true,
|
||||
"codec_equivalence_accepted": true,
|
||||
"finite_s6_impact_accepted": true,
|
||||
"finite_whole647_equivalence_accepted": true,
|
||||
"latest_whole_candidate": "r290/library291 finite293-r04",
|
||||
"single_timing_pair": {
|
||||
"baseline_us": 1214852,
|
||||
"candidate_us": 1217932,
|
||||
"ratio": 1.0025352882491037,
|
||||
"reduction_percent": -0.25352882491035944,
|
||||
"scope": "One adjacent cold paused speed1 headless observation only; no stable/P95/budget acceptance"
|
||||
},
|
||||
"stable_gain_supported": false,
|
||||
"stall_budget_met": false,
|
||||
"candidate_adopted": false,
|
||||
"formal_completed_added": 0,
|
||||
"unit_accepted": false,
|
||||
"whole_goal_accepted": false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9405,7 +9405,7 @@
|
||||
},
|
||||
"legacy_state": "planned",
|
||||
"state_scope": "package-level; completed means whole package accepted; partial implementation is not completion",
|
||||
"current_summary": "P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新局所/whole647検証済み実験候補はr274/library275(局所r278-r04、原S6影響/全保存同値r281を有限受理)で、単一同期1139564usは50ms未達・安定利益/P95/D10未証明。未変更版の性能反復と全回帰を増やさない。r272-r02はOS Call graphが空で診断未受入として履歴保持。r272-r03は実sampler開始banner後にreleaseし16threadの部分窓を採取、18/0・正常終了・全11,487,732bytes原oracle同値・source/default/stage/SUPPORT保護/復元を有限受理。r273-r04は既存object/SDKから別link1回、採取版と全14sectionsの配置/内容一致を独立確認し415native frameを88関数へ唯一範囲対応。重複inclusiveの行カウントからCPU比率・恒常原因・速度利益を推定しない。新候補r274/library275は原Runtimeの純粋なNeed relief/categoryタグ判定2メソッドだけを元call位置で直接翻訳、六key挿入順・全値/分岐優先を保持、毎回fresh Dictionary・memoなし。各位置のbuiltin/typed guardと元dynamic fallbackを静的受理し、SDK再コンパイル0・bridge compile1/link1・arm64 host build/strict/owned/保護を有限受理。r278-r04は同一library275をactual loadし、原15境界・タグ1028入力・実callback script変更2経路の局所比較を独立有限受理。全ordered typed候補・各入力の記録Path効果・独立所有を比較し、全Runtimeは原15境界とタグ空/全のみ比較。ticksはstairs150で実切替、pricingは元料金呼出中に実切替し元helper位置のdynamic fallback/countを確認。7358/0・strict0・所有PID16599正常終了・private/制作source/default/共有と親stage保護。r278早期継承拒否、r02 callback未到達の4失敗/SCRIPT ERROR/欠測、r03期待件数拒否は履歴保持。r280は元provider9関数の呼出を監査し、exact builtin・wellformed typed・同期処理内のfallback後context再利用を限定静的支持。並行変更/invalidObject/free/samepath偽装/一般再入所有は未認定。r281は同一274/library275で原S6影響24/0、直前265/266と同cold646/paused/speed1/同Budget257/原Pathのwhole各15/0・全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/全入力保護復元を独立有限受理。同期時間は直前1169815→新1139564usの隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。料金/重み/閾値/論理時刻/通知順/行動/会計/乱数/保存は変更しない。旧実験の詳細は既存版付き証拠・過去snapshot・今回before/previous_summaryへ保持。正式完了追加0。次はr274/library275の局所・原S6影響・全保存同値証拠を保持し、代表同期処理の50ms未達を解消する必要な関連修正を1件選ぶ。関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは後回し・免除なし。",
|
||||
"current_summary": "P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新の局所・原S6影響・whole647検証済み実験候補はr290/library291。r285-r02の整数Array符号化/追記・単一先頭削除候補は実校正を通らず、r287の4024/112失敗を拒否記録として保持。r290は型付きINT・空classのscript不在をNILまたはnull OBJECTだけ許す判定修復で、符号化・全4校正・元fallback・記録・閾値・通知・所有処理は親と同一。静的290とbridge compile1/link1・SDK再コンパイル0のhost291を独立有限受理。局所r292-r02は同一library291をactual loadし、原260-r02の同入力/設定/原1299stage/engine/fixture bodyを照合した有効な原結果を再利用、原Budget833行・6,589,288bytes全文一致と整数codec33ケース・4024/0を独立有限受理。整数28ケースは型付き/無型・read-only/可変・int32/int64境界・窓長0/1/2/9/511/512/513・返却bytesの変更隔離を実engine bytesと比較、非整数5ケースは拒否/無変更。説明3箇所の旧対象名による未実行r292拒否は履歴保持し、r02で説明だけ修復・試験基準不変・既存libraryコピー再利用。r293-r04は同一r290/library291で元S6/GameClock24/0、直前r274/library275と同cold646/paused/speed1/同Budget257一時patch/原Pathのwhole各15/0、全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/source/default/stage/SUPPORT保護復元を独立有限受理。同期時間1214852→1217932usは隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。料金/重み/閾値/論理時刻/行動/会計/乱数/保存は変更しない。r274/275の純タグ局所278-r04・whole281、同期builtin fallback静的280と他の旧実験詳細は版付き証拠・before/previous_summaryへ保持。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。Gitの実験checkpoint配下に空.gdignoreを置き、Budget class_nameが本体のresource走査へ混ざることを防止。正式完了追加0。次はr290/library291は今回の単発比較で性能改善を示さず追加codecの維持負担があるため不採用とし、次の性能修正元はr274/library275を保持する。r290/library291の局所・原S6影響・全保存同値証拠を保持し、代表同期負荷の必須性能未達を解消する関連修正を1件に絞る。未変更版の性能反復や全回帰を重複せず、関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは延期・未達・免除なし。",
|
||||
"remaining_deliverables": [
|
||||
{
|
||||
"id": "P23-01",
|
||||
@@ -14907,9 +14907,72 @@
|
||||
"scope": "Finite originalS6/fullwhole647/ownedexit plus exactbuiltin synchronous fallback static only; performance/general reentry/provider ownership/OS/Windows/unit not accepted",
|
||||
"linked_at_jst": "2026-10-12T07:36:02.955221+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-independent-review-r290.json",
|
||||
"sha256_at_integration": "be6cbb78a30264bb061290685f53edf77b850a9fb815ebdd1c744b2ed99ff7d5",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-static-root-verification-r290.json",
|
||||
"sha256_at_integration": "88c25fa1a78334302396f70d71acfbb4cc942cea5ffb3ed7b6f5769afc7b6b3a",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-actual-independent-review-r291.json",
|
||||
"sha256_at_integration": "681b686f858c703e6437028b3db51567dd58df3e1956ba84e36995dee0cabf3b",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-build-root-verification-r291.json",
|
||||
"sha256_at_integration": "6617af23def22877301448fb9843feb41521211a6fcac505b1028a9980631126",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-actual-independent-review-r292-r02.json",
|
||||
"sha256_at_integration": "12482ab52f4eea2534617227cb4676ecfe067591df628f4d5117efad7d66dd49",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-local-r292-r02/actual-root-verification.json",
|
||||
"sha256_at_integration": "c16933c5137d67f307cdb01f0f8916f95f0e25667d8a1fe8f2bb0659664265b1",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-actual-independent-review-r293-r04.json",
|
||||
"sha256_at_integration": "147409de969918719f1682ff3bc537192a28d01837bfda6532ce4d1c292e9059",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-native-integer-window-codec-impact-whole-r293-r04/actual-root-verification.json",
|
||||
"sha256_at_integration": "61d1c24434347f25abbdb8d257da8eeb16e86307e6560a9a61102cd26f7974cf",
|
||||
"scope": "Finite static/host/Budget enginecodec local/originalS6/whole647/owned exit per individual receipt only; no stable performance/final172/OS/Windows/adoption/unit acceptance",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
},
|
||||
{
|
||||
"path": "artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r294.json",
|
||||
"sha256_at_integration": "360747fb5ae1484b3e8b9eee30538ffe5d59a478c607dc55fe9606c42680a614",
|
||||
"scope": "Current17 unaccepted conditions and versioned finite evidence, no partial credit",
|
||||
"linked_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"current_game_acceptance_inferred": false
|
||||
}
|
||||
],
|
||||
"progress_summary": "P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新局所/whole647検証済み実験候補はr274/library275(局所r278-r04、原S6影響/全保存同値r281を有限受理)で、単一同期1139564usは50ms未達・安定利益/P95/D10未証明。未変更版の性能反復と全回帰を増やさない。r272-r02はOS Call graphが空で診断未受入として履歴保持。r272-r03は実sampler開始banner後にreleaseし16threadの部分窓を採取、18/0・正常終了・全11,487,732bytes原oracle同値・source/default/stage/SUPPORT保護/復元を有限受理。r273-r04は既存object/SDKから別link1回、採取版と全14sectionsの配置/内容一致を独立確認し415native frameを88関数へ唯一範囲対応。重複inclusiveの行カウントからCPU比率・恒常原因・速度利益を推定しない。新候補r274/library275は原Runtimeの純粋なNeed relief/categoryタグ判定2メソッドだけを元call位置で直接翻訳、六key挿入順・全値/分岐優先を保持、毎回fresh Dictionary・memoなし。各位置のbuiltin/typed guardと元dynamic fallbackを静的受理し、SDK再コンパイル0・bridge compile1/link1・arm64 host build/strict/owned/保護を有限受理。r278-r04は同一library275をactual loadし、原15境界・タグ1028入力・実callback script変更2経路の局所比較を独立有限受理。全ordered typed候補・各入力の記録Path効果・独立所有を比較し、全Runtimeは原15境界とタグ空/全のみ比較。ticksはstairs150で実切替、pricingは元料金呼出中に実切替し元helper位置のdynamic fallback/countを確認。7358/0・strict0・所有PID16599正常終了・private/制作source/default/共有と親stage保護。r278早期継承拒否、r02 callback未到達の4失敗/SCRIPT ERROR/欠測、r03期待件数拒否は履歴保持。r280は元provider9関数の呼出を監査し、exact builtin・wellformed typed・同期処理内のfallback後context再利用を限定静的支持。並行変更/invalidObject/free/samepath偽装/一般再入所有は未認定。r281は同一274/library275で原S6影響24/0、直前265/266と同cold646/paused/speed1/同Budget257/原Pathのwhole各15/0・全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/全入力保護復元を独立有限受理。同期時間は直前1169815→新1139564usの隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。料金/重み/閾値/論理時刻/通知順/行動/会計/乱数/保存は変更しない。旧実験の詳細は既存版付き証拠・過去snapshot・今回before/previous_summaryへ保持。正式完了追加0。次はr274/library275の局所・原S6影響・全保存同値証拠を保持し、代表同期処理の50ms未達を解消する必要な関連修正を1件選ぶ。関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは後回し・免除なし。",
|
||||
"progress_summary": "P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新の局所・原S6影響・whole647検証済み実験候補はr290/library291。r285-r02の整数Array符号化/追記・単一先頭削除候補は実校正を通らず、r287の4024/112失敗を拒否記録として保持。r290は型付きINT・空classのscript不在をNILまたはnull OBJECTだけ許す判定修復で、符号化・全4校正・元fallback・記録・閾値・通知・所有処理は親と同一。静的290とbridge compile1/link1・SDK再コンパイル0のhost291を独立有限受理。局所r292-r02は同一library291をactual loadし、原260-r02の同入力/設定/原1299stage/engine/fixture bodyを照合した有効な原結果を再利用、原Budget833行・6,589,288bytes全文一致と整数codec33ケース・4024/0を独立有限受理。整数28ケースは型付き/無型・read-only/可変・int32/int64境界・窓長0/1/2/9/511/512/513・返却bytesの変更隔離を実engine bytesと比較、非整数5ケースは拒否/無変更。説明3箇所の旧対象名による未実行r292拒否は履歴保持し、r02で説明だけ修復・試験基準不変・既存libraryコピー再利用。r293-r04は同一r290/library291で元S6/GameClock24/0、直前r274/library275と同cold646/paused/speed1/同Budget257一時patch/原Pathのwhole各15/0、全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/source/default/stage/SUPPORT保護復元を独立有限受理。同期時間1214852→1217932usは隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。料金/重み/閾値/論理時刻/行動/会計/乱数/保存は変更しない。r274/275の純タグ局所278-r04・whole281、同期builtin fallback静的280と他の旧実験詳細は版付き証拠・before/previous_summaryへ保持。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。Gitの実験checkpoint配下に空.gdignoreを置き、Budget class_nameが本体のresource走査へ混ざることを防止。正式完了追加0。次はr290/library291は今回の単発比較で性能改善を示さず追加codecの維持負担があるため不採用とし、次の性能修正元はr274/library275を保持する。r290/library291の局所・原S6影響・全保存同値証拠を保持し、代表同期負荷の必須性能未達を解消する関連修正を1件に絞る。未変更版の性能反復や全回帰を重複せず、関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは延期・未達・免除なし。",
|
||||
"remaining_gaps": [
|
||||
{
|
||||
"id": "C01",
|
||||
@@ -14970,8 +15033,8 @@
|
||||
{
|
||||
"id": "C09",
|
||||
"conditions": [
|
||||
"Latest257-r04/library258-r02 native load/local260-r02, original S6/GameClock impact and whole647262 finite accepted. Single1249740→1178137us/5.729431721798134% exploratory shortening is not stable gain/P95/D10; 1178137us exceeds50ms. Final172/original17/normal OS/realtime x3/exit/small-screen/same Windows distribution remain unmet. Candidate unadopted; original239/240 implementation parent retained, old248 declined history preserved.",
|
||||
"原条件詳細はhistorical_conditions_before_r263-r02と旧matrixへ保持。"
|
||||
"Latest r290/library291 finite local292-r02 and original S6/whole293-r04 accepted. Single whole tick1217932us; 50ms未達. Stable gain/P95/D10/50ms final performance, final172, general reentry/provider ownership, normal OS/realtime x3/exit/small-screen/same Windows and original17 remain unaccepted. Old287 codec failure and 292 metadata rejection retained; experimental codec declined, next implementation parent r274/library275 retained; no stable regression claim or adoption.",
|
||||
"原詳細・旧版条件はhistorical fieldsと旧matrixへ保持。"
|
||||
],
|
||||
"historical_conditions_before_r230": [
|
||||
"r06小規模営業ON実時間x3の通常操作証拠は履歴/不変適用範囲のみ保持。制作r32と最終採用候補の応答追随・原操作/Windowsを最終受入へ整合する。",
|
||||
@@ -15021,12 +15084,12 @@
|
||||
{
|
||||
"id": "cross-cutting-final-candidate",
|
||||
"conditions": [
|
||||
"P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新局所/whole647検証済み実験候補はr274/library275(局所r278-r04、原S6影響/全保存同値r281を有限受理)で、単一同期1139564usは50ms未達・安定利益/P95/D10未証明。未変更版の性能反復と全回帰を増やさない。r272-r02はOS Call graphが空で診断未受入として履歴保持。r272-r03は実sampler開始banner後にreleaseし16threadの部分窓を採取、18/0・正常終了・全11,487,732bytes原oracle同値・source/default/stage/SUPPORT保護/復元を有限受理。r273-r04は既存object/SDKから別link1回、採取版と全14sectionsの配置/内容一致を独立確認し415native frameを88関数へ唯一範囲対応。重複inclusiveの行カウントからCPU比率・恒常原因・速度利益を推定しない。新候補r274/library275は原Runtimeの純粋なNeed relief/categoryタグ判定2メソッドだけを元call位置で直接翻訳、六key挿入順・全値/分岐優先を保持、毎回fresh Dictionary・memoなし。各位置のbuiltin/typed guardと元dynamic fallbackを静的受理し、SDK再コンパイル0・bridge compile1/link1・arm64 host build/strict/owned/保護を有限受理。r278-r04は同一library275をactual loadし、原15境界・タグ1028入力・実callback script変更2経路の局所比較を独立有限受理。全ordered typed候補・各入力の記録Path効果・独立所有を比較し、全Runtimeは原15境界とタグ空/全のみ比較。ticksはstairs150で実切替、pricingは元料金呼出中に実切替し元helper位置のdynamic fallback/countを確認。7358/0・strict0・所有PID16599正常終了・private/制作source/default/共有と親stage保護。r278早期継承拒否、r02 callback未到達の4失敗/SCRIPT ERROR/欠測、r03期待件数拒否は履歴保持。r280は元provider9関数の呼出を監査し、exact builtin・wellformed typed・同期処理内のfallback後context再利用を限定静的支持。並行変更/invalidObject/free/samepath偽装/一般再入所有は未認定。r281は同一274/library275で原S6影響24/0、直前265/266と同cold646/paused/speed1/同Budget257/原Pathのwhole各15/0・全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/全入力保護復元を独立有限受理。同期時間は直前1169815→新1139564usの隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。料金/重み/閾値/論理時刻/通知順/行動/会計/乱数/保存は変更しない。旧実験の詳細は既存版付き証拠・過去snapshot・今回before/previous_summaryへ保持。正式完了追加0。次はr274/library275の局所・原S6影響・全保存同値証拠を保持し、代表同期処理の50ms未達を解消する必要な関連修正を1件選ぶ。関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは後回し・免除なし。"
|
||||
"P23-02は着手中・次に閉じる1件。30パッケージ/88成果、正式9/着手19/予定60、部分点なし。制作r32と選定済み未採用作業r62を保持。原17条件C01-C09/X1-X8はすべて未受入、Windows実機を要するC08/X8だけブロック。Ctrl保持wheel/左保持dragは延期・未達・免除なし。最新の局所・原S6影響・whole647検証済み実験候補はr290/library291。r285-r02の整数Array符号化/追記・単一先頭削除候補は実校正を通らず、r287の4024/112失敗を拒否記録として保持。r290は型付きINT・空classのscript不在をNILまたはnull OBJECTだけ許す判定修復で、符号化・全4校正・元fallback・記録・閾値・通知・所有処理は親と同一。静的290とbridge compile1/link1・SDK再コンパイル0のhost291を独立有限受理。局所r292-r02は同一library291をactual loadし、原260-r02の同入力/設定/原1299stage/engine/fixture bodyを照合した有効な原結果を再利用、原Budget833行・6,589,288bytes全文一致と整数codec33ケース・4024/0を独立有限受理。整数28ケースは型付き/無型・read-only/可変・int32/int64境界・窓長0/1/2/9/511/512/513・返却bytesの変更隔離を実engine bytesと比較、非整数5ケースは拒否/無変更。説明3箇所の旧対象名による未実行r292拒否は履歴保持し、r02で説明だけ修復・試験基準不変・既存libraryコピー再利用。r293-r04は同一r290/library291で元S6/GameClock24/0、直前r274/library275と同cold646/paused/speed1/同Budget257一時patch/原Pathのwhole各15/0、全11,487,732bytes原oracle同値・3所有PID正常終了・strict/private/source/default/stage/SUPPORT保護復元を独立有限受理。同期時間1214852→1217932usは隣接単発観測のみで、50ms未達・安定利益/P95/D10未証明。料金/重み/閾値/論理時刻/行動/会計/乱数/保存は変更しない。r274/275の純タグ局所278-r04・whole281、同期builtin fallback静的280と他の旧実験詳細は版付き証拠・before/previous_summaryへ保持。全172・通常OS/Windows・性能・採用・単位完成は未受入、未選定・未採用。Gitの実験checkpoint配下に空.gdignoreを置き、Budget class_nameが本体のresource走査へ混ざることを防止。正式完了追加0。次はr290/library291は今回の単発比較で性能改善を示さず追加codecの維持負担があるため不採用とし、次の性能修正元はr274/library275を保持する。r290/library291の局所・原S6影響・全保存同値証拠を保持し、代表同期負荷の必須性能未達を解消する関連修正を1件に絞る。未変更版の性能反復や全回帰を重複せず、関連変更を固めた同一最終版で必須全172・P95/D10・50ms・通常OS/x3/終了/小画面・同一Windows配布版実機と原17条件を満たす。人のCtrl保持ホイールと左ボタン保持ドラッグは延期・未達・免除なし。"
|
||||
]
|
||||
}
|
||||
],
|
||||
"updated_at_jst": "2026-10-12T07:36:02.955221+09:00",
|
||||
"acceptance_matrix_reference": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r282.json"
|
||||
"updated_at_jst": "2026-10-12T08:19:20.734747+09:00",
|
||||
"acceptance_matrix_reference": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-current-progress-disposition-r294.json"
|
||||
},
|
||||
{
|
||||
"id": "P23-03",
|
||||
@@ -15109,7 +15172,7 @@
|
||||
],
|
||||
"cross_cutting_acceptance_scope": "Completion requirements only, not achieved results. Apply each to relevant slices; non-applicable views require a recorded reason.",
|
||||
"initial_revision_state": "in_progress",
|
||||
"updated_at_jst": "2026-10-12T07:36:02.955221+09:00"
|
||||
"updated_at_jst": "2026-10-12T08:19:20.734747+09:00"
|
||||
},
|
||||
{
|
||||
"id": "P24",
|
||||
|
||||
Reference in New Issue
Block a user