layout: restructure into src/ tests/ android/ scripts/ tools/

- extension/src/{port,platform,codepage} -> src/; native_render -> src/host
  (+ dxt, shaders/); libgr2 -> src/gr2; extension/third_party -> third_party
- extension/tests -> tests/port, libgr2/tests -> tests/gr2
- android-native -> android (build.sh, push-client.sh moved in)
- script -> scripts; tools/40250 -> tools/server; oracle -> tools/granny-oracle;
  perf tools -> tools/perf
- all build trees under build/ (native, release, android, port-gate)
- xrender:: CMake aliases -> mt::; port-map ledger impl paths rewritten

No code changes. ctest 15/15, port_gate macos+android PASS, port_map check 0 errors.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-09-29 19:08:19 +09:00
co-authored by Claude Opus 5.5
parent 70710477cf
commit a46093104c
2817 changed files with 13728 additions and 13744 deletions
+80 -80
View File
@@ -10,8 +10,8 @@
"pack://introselect.py:SelectCharacterWindow.OnRender"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.__init__": {
@@ -20,8 +20,8 @@
"pack://introselect.py:SelectCharacterWindow.__init__"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.__del__": {
@@ -30,8 +30,8 @@
"pack://introselect.py:SelectCharacterWindow.__del__"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.Open": {
@@ -40,8 +40,8 @@
"pack://introselect.py:SelectCharacterWindow.Open"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.Close": {
@@ -50,8 +50,8 @@
"pack://introselect.py:SelectCharacterWindow.Close"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.SetEmpire": {
@@ -60,8 +60,8 @@
"pack://introselect.py:SelectCharacterWindow.SetEmpire"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.HideAllFlag": {
@@ -70,8 +70,8 @@
"pack://introselect.py:SelectCharacterWindow.HideAllFlag"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.Refresh": {
@@ -80,8 +80,8 @@
"pack://introselect.py:SelectCharacterWindow.Refresh"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.GetCharacterSlotID": {
@@ -90,8 +90,8 @@
"pack://introselect.py:SelectCharacterWindow.GetCharacterSlotID"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.__LoadQuestionDialog": {
@@ -100,8 +100,8 @@
"pack://introselect.py:SelectCharacterWindow.__LoadQuestionDialog"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.__LoadBoardDialog": {
@@ -110,8 +110,8 @@
"pack://introselect.py:SelectCharacterWindow.__LoadBoardDialog"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.SameLoginDisconnect": {
@@ -120,8 +120,8 @@
"pack://introselect.py:SelectCharacterWindow.SameLoginDisconnect"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.MakeCharacter": {
@@ -130,8 +130,8 @@
"pack://introselect.py:SelectCharacterWindow.MakeCharacter"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.StartGame": {
@@ -140,8 +140,8 @@
"pack://introselect.py:SelectCharacterWindow.StartGame"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OpenChangeNameDialog": {
@@ -150,8 +150,8 @@
"pack://introselect.py:SelectCharacterWindow.OpenChangeNameDialog"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OnChangeName": {
@@ -160,8 +160,8 @@
"pack://introselect.py:SelectCharacterWindow.OnChangeName"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.AcceptInputName": {
@@ -170,8 +170,8 @@
"pack://introselect.py:SelectCharacterWindow.AcceptInputName"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.CancelInputName": {
@@ -180,8 +180,8 @@
"pack://introselect.py:SelectCharacterWindow.CancelInputName"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OnCreateFailure": {
@@ -190,8 +190,8 @@
"pack://introselect.py:SelectCharacterWindow.OnCreateFailure"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.CreateCharacter": {
@@ -200,8 +200,8 @@
"pack://introselect.py:SelectCharacterWindow.CreateCharacter"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.__AreAllSlotEmpty": {
@@ -210,8 +210,8 @@
"pack://introselect.py:SelectCharacterWindow.__AreAllSlotEmpty"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.PopupDeleteQuestion": {
@@ -220,8 +220,8 @@
"pack://introselect.py:SelectCharacterWindow.PopupDeleteQuestion"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.RequestDeleteCharacter": {
@@ -230,8 +230,8 @@
"pack://introselect.py:SelectCharacterWindow.RequestDeleteCharacter"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.InputPrivateCode": {
@@ -240,8 +240,8 @@
"pack://introselect.py:SelectCharacterWindow.InputPrivateCode"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.AcceptInputPrivateCode": {
@@ -250,8 +250,8 @@
"pack://introselect.py:SelectCharacterWindow.AcceptInputPrivateCode"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.CancelInputPrivateCode": {
@@ -260,8 +260,8 @@
"pack://introselect.py:SelectCharacterWindow.CancelInputPrivateCode"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OnDeleteSuccess": {
@@ -270,8 +270,8 @@
"pack://introselect.py:SelectCharacterWindow.OnDeleteSuccess"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OnDeleteFailure": {
@@ -280,8 +280,8 @@
"pack://introselect.py:SelectCharacterWindow.OnDeleteFailure"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.DeleteCharacter": {
@@ -290,8 +290,8 @@
"pack://introselect.py:SelectCharacterWindow.DeleteCharacter"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.ExitSelect": {
@@ -300,8 +300,8 @@
"pack://introselect.py:SelectCharacterWindow.ExitSelect"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.GetSlotIndex": {
@@ -310,8 +310,8 @@
"pack://introselect.py:SelectCharacterWindow.GetSlotIndex"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.DecreaseSlotIndex": {
@@ -320,8 +320,8 @@
"pack://introselect.py:SelectCharacterWindow.DecreaseSlotIndex"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.IncreaseSlotIndex": {
@@ -330,8 +330,8 @@
"pack://introselect.py:SelectCharacterWindow.IncreaseSlotIndex"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.SelectSlot": {
@@ -340,8 +340,8 @@
"pack://introselect.py:SelectCharacterWindow.SelectSlot"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.InitCharacterBoard": {
@@ -350,8 +350,8 @@
"pack://introselect.py:SelectCharacterWindow.InitCharacterBoard"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OnKeyDown": {
@@ -360,8 +360,8 @@
"pack://introselect.py:SelectCharacterWindow.OnKeyDown"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OnUpdate": {
@@ -370,8 +370,8 @@
"pack://introselect.py:SelectCharacterWindow.OnUpdate"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.EmptyFunc": {
@@ -380,8 +380,8 @@
"pack://introselect.py:SelectCharacterWindow.EmptyFunc"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.PopupMessage": {
@@ -390,8 +390,8 @@
"pack://introselect.py:SelectCharacterWindow.PopupMessage"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
},
"SelectCharacterWindow.OnPressExitKey": {
@@ -400,8 +400,8 @@
"pack://introselect.py:SelectCharacterWindow.OnPressExitKey"
],
"evidence": [
"script/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"script/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
"scripts/verify_root_pack.py: introselect.py bytes match 40250 source and root.epk",
"scripts/python_game_render_test.sh: embedded CPython loads system.py and game modules through CEterPackManager"
]
}
}