50 lines
4.1 KiB
Markdown
50 lines
4.1 KiB
Markdown
# Reactor Maintenance Rewrite Tasks
|
|
|
|
## Current State
|
|
|
|
- Branch: `design-rewrite`
|
|
- Scope approved: implement `docs/design.md` end-to-end with deterministic defaults and no backward compatibility.
|
|
- Simulation core has been replaced with the first design-native model and deterministic engine slice.
|
|
- Simulation and test projects now target `net10.0` because this Linux environment only has the .NET 10 runtime.
|
|
- Win2D editor has been rewritten against the new design model.
|
|
- Win2D project now targets `net10.0-windows10.0.19041.0` to match the simulation project.
|
|
- Linux can restore and compile the referenced simulation project, but full WinUI/XAML compilation still requires a Windows-capable XAML compiler environment.
|
|
|
|
## Completed Work
|
|
|
|
- Read project instructions, Linux instructions, code style, and `docs/design.md`.
|
|
- Confirmed deterministic balance defaults should be chosen during implementation.
|
|
- Confirmed a full Win2D editor is required.
|
|
- Created branch `design-rewrite`.
|
|
- Added `TASKS.md` as the required per-commit work tracker.
|
|
- Removed the legacy integer hazard/effect/hazard plug-in simulation surface.
|
|
- Added design-native terrain, underground carrier layers, surface hazards, props, leaks, doors, reactor bindings, robot inventory, rule events, validation, serialization, and forecasts.
|
|
- Added deterministic default balancing values.
|
|
- Added a first deterministic simulation pipeline for network propagation, consumers, leaks, surface interactions, robot safety, reactor readiness, rule events, and forecasts.
|
|
- Replaced old tests with design-based simulation tests.
|
|
- Verified `dotnet test tests/ReactorMaintenance.Simulation.Tests/ReactorMaintenance.Simulation.Tests.csproj` passes: 11 passed.
|
|
- Attempted `dotnet jb cleanupcode --build=False ...`; unavailable in this environment because `dotnet-jb` is not installed.
|
|
- Reviewed the first slice and fixed an action-resolution maintainability issue before commit.
|
|
- Verified `git diff --check` reports no whitespace errors.
|
|
- Ran `dotnet jb cleanupcode --build=False ...` successfully after ReSharper install and normalized line endings back to LF.
|
|
- Reworked the Win2D editor for the new model: full tool list, layer-aware painting, terrain, underground carriers, surface hazards, props, doors, leaks, robot, forecasts, save validation, starter level, and simple play actions.
|
|
- Removed old editor dependencies on legacy props, pressure pipes, smoke, fire, and global power/cooling/core-stability fields.
|
|
- Verified `dotnet test tests/ReactorMaintenance.Simulation.Tests/ReactorMaintenance.Simulation.Tests.csproj` passes after the editor rewrite: 11 passed.
|
|
- Attempted Win2D build on Linux with `dotnet build src/ReactorMaintenance.Win2D/ReactorMaintenance.Win2D.csproj -p:EnableWindowsTargeting=true -p:Platform=x64`; it fails at Windows `XamlCompiler.exe` with exec format error.
|
|
- Attempted managed XAML compiler path with `-p:UseXamlCompilerExecutable=false`; it fails loading the WinUI XAML compiler task dependency under this Linux/.NET 10 setup.
|
|
- Updated `README.md` for the new design-model editor, .NET 10 target, and Linux/Windows build expectations.
|
|
|
|
## Current Work
|
|
|
|
- Commit the Win2D editor rewrite slice.
|
|
|
|
## Future Work
|
|
|
|
1. Expand simulation fidelity where the first slice is intentionally simplified: junction branch inference, ambiguity validation, complete pair table coverage, richer rule predicates/effects, and stronger forecast proof cases.
|
|
2. Add advanced editor workflows for explicit reactor binding selection, explicit door edge selection, electricity wall leak face selection, and rule event authoring.
|
|
3. Verify and polish the Win2D app on Windows where the XAML compiler can run.
|
|
4. Update README and any affected docs to reflect the new schema, .NET target, editor controls, and deterministic defaults.
|
|
5. Build the Win2D project on a Windows-capable environment after the editor rewrite.
|
|
6. Add broader tests for junction ratios, ambiguous junctions, all rule event families, serialization edge cases, and editor operations.
|
|
7. Run cleanup when `dotnet-jb` is available, tests, code review, and iterate until the implementation is clean and maintainable.
|