diff --git a/.gitea/workflows/core-validation.yml b/.gitea/workflows/core-validation.yml index db15554..02887d2 100644 --- a/.gitea/workflows/core-validation.yml +++ b/.gitea/workflows/core-validation.yml @@ -3,10 +3,10 @@ name: Core validation on: push: branches: - - main + - develop pull_request: branches: - - main + - develop workflow_dispatch: permissions: diff --git a/docs/platform-portability.md b/docs/platform-portability.md index d414689..ad51484 100644 --- a/docs/platform-portability.md +++ b/docs/platform-portability.md @@ -55,7 +55,7 @@ claiming portable exports. | Game-install, runtime metadata, and repository discovery | `GameRootSelection` accepts `--game-root`, then probes the executable directory and current working directory for `SYS4INI.BIN`; on Unix the frontend prefers inherited shell `PWD` because Godot may change the process directory during project startup. Godot injects the selected root into its catalog and loose-first ALF store. `Himegari.csproj` embeds generated `build/opcodes.json`, and the frontend loads that assembly resource rather than `Paths.OpcodesJson`. Development/test `Paths.cs` finds the repository by tracked `global.json`, solution, and opcode-map markers rather than a checkout-directory name | Installed game data and packaged VM metadata no longer depend on the workspace sibling layout. The Linux export passed an explicit absolute game root outside the repository and read the installed archives; a source-only core proof also passes from an arbitrary repository directory name. Exported automatic page maps use `user://diagnostics/page-maps`; editor/development runs preserve `build/page-map-.jsonl` | Let the future profile launcher pass `--game-root`, and run executable-directory/CWD plus case/permission smoke gates on Linux and macOS | | Archive parity oracle | One integration test can launch a machine-local `bin/BinExtractALF.exe`; the binary and matching DLL are ignored and have unverified redistribution terms | Windows-only installed-data helper, not a shipped runtime dependency | Keep it in an explicit private workspace gate; runtime ALF/AAI readers do not depend on it | | Native RE tools | Frida/Ghidra helpers target the original `AGE.EXE`; PE-sieve was tried and replaced by the Frida import-map workflow | Development/research only; no native RE executable is tracked | Keep separate from export requirements; document platform prerequisites per tool | -| Python workflow and core CI | The operating guide uses Windows `py -3.11`; `validate.py` launches child tools through `sys.executable` and has POSIX process-group cleanup plus `ps`-based leak auditing | The 590 engine cases are explicitly split into 502 source-only core cases and 88 `Workspace` installed-data/native-oracle cases; both selections pass with zero skips. The opcode-bootstrap unit injects synthetic observations while production bootstrap retains real-corpus scanning. `.gitea/workflows/core-validation.yml` uses the target server's demonstrated `ubuntu-latest`, checkout/setup-dotnet v4, setup-python v6, and Gitea artifact action baseline. A standalone arbitrary-name, corpus-free repository passes the complete core driver | Confirm the first real Linux run after the rewritten history is pushed. Retain Windows-native GDI parity and private installed-game/runtime checks as separate trusted gates | +| Python workflow and core CI | The operating guide uses Windows `py -3.11`; `validate.py` launches child tools through `sys.executable` and has POSIX process-group cleanup plus `ps`-based leak auditing | The 590 engine cases are explicitly split into 502 source-only core cases and 88 `Workspace` installed-data/native-oracle cases; both selections pass with zero skips. The opcode-bootstrap unit injects synthetic observations while production bootstrap retains real-corpus scanning. `.gitea/workflows/core-validation.yml` uses the target server's demonstrated `ubuntu-latest`, checkout/setup-dotnet v4, setup-python v6, and Gitea artifact action baseline. A standalone arbitrary-name, corpus-free repository passes the complete core driver. The rewritten history is published on the private remote's default `develop` branch | Confirm the first real Linux run for `develop`. Retain Windows-native GDI parity and private installed-game/runtime checks as separate trusted gates | No authored runtime code currently calls native DirectSound, Direct3D, Vulkan, Metal, or OpenGL. Mentions of those APIs in `docs/engine-re.md` describe the original AGE implementation. Both the software-oracle display diff --git a/docs/remake-architecture-and-roadmap.md b/docs/remake-architecture-and-roadmap.md index 058d46c..d333415 100644 --- a/docs/remake-architecture-and-roadmap.md +++ b/docs/remake-architecture-and-roadmap.md @@ -958,7 +958,9 @@ do not mix mechanical moves with semantic changes. The workflow moved to `.gitea/workflows/core-validation.yml` and matches the same-server baseline: `ubuntu-latest`, checkout/setup-dotnet v4, setup-python v6, and Gitea-specific artifact upload. A standalone source-only repository under an arbitrary name passes the complete core driver without sibling game/extracted - data. The first actual Linux runner result remains pending until the user adds and pushes the selected remote. + data. The rewritten repository is now published to the selected private Gitea remote on its default `develop` + branch; the workflow's push and pull-request filters target `develop`. The first actual Linux runner result + remains to be confirmed in the server UI. **Not cleanup targets:** generated `build/` output, the two intentional solution files, historical `docs/superpowers/` plans/specifications, and fidelity-specific complexity that is directly covered by the @@ -1306,9 +1308,9 @@ layer's rendering diverges from ADV; save layout. --- ## 8. Immediate next step -Continue step 5 of the **codebase consolidation** maintenance slice by adding and pushing the user-selected -private Gitea remote, then confirm the first hosted Linux core result. After that, make the user-owned project- -license and Kelebek-derived-material decisions required before wider distribution. Do not infer a license choice -or configure/publish a remote without the user's explicit direction. +Continue step 5 of the **codebase consolidation** maintenance slice by confirming the first hosted Linux core +result on the private Gitea `develop` branch. After that, make the user-owned project-license and Kelebek-derived- +material decisions required before wider distribution. Do not infer a license choice or change remote policy +without the user's explicit direction. Concrete playthrough blockers may still preempt this bounded maintenance work; the consolidation effort does not replace Phase B gameplay validation or the open cross-platform gates. diff --git a/docs/tools-reference.md b/docs/tools-reference.md index 385053c..532ac14 100644 --- a/docs/tools-reference.md +++ b/docs/tools-reference.md @@ -41,8 +41,9 @@ The hosted wrapper is `.gitea/workflows/core-validation.yml`. It matches the tar source-only repository under an arbitrary directory name passes that exact driver without sibling game or extracted data. Repository discovery uses tracked marker files rather than requiring the checkout directory to be named `age-reimpl`. The workflow has no secrets, private corpus, Godot runtime, cache, packaging, or deployment -access; failure logs are retained for seven days. Its first actual Linux/Gitea execution remains pending until -the rewritten repository is pushed. +access; failure logs are retained for seven days. The private remote's default and tracked development branch is +`develop`; pushes and pull requests targeting it select the gate. The rewritten repository is published there, +and the first actual Linux/Gitea result remains to be confirmed in the server UI. ## Optional local binary tools