Skip to content

refactor(editor): unify UI ownership and editing workflows - #26

Merged
FLwolfy merged 54 commits into
masterfrom
editor-ui
Oct 30, 2026
Merged

FLwolfy merged 54 commits into
masterfrom
editor-ui

Conversation

@FLwolfy

@FLwolfy FLwolfy commented Oct 26, 2026 •

Copy link
Copy Markdown
Member

Result

Editor UI editing, presentation and resource retirement now follow explicit feature, interaction, session and Host owners. The approved UI plan is implemented and verified, including its necessary SDK, IO, asset and serialization prerequisites. The established layout and visual identity are preserved while controls and workflows are made consistent.

  • Keep domain changes in features and SceneEdits with one History protocol, immediate continuous gestures, atomic batch rollback and recoverable Missing barriers.
  • Share Action behavior across menus, search, shortcuts and toolbars. Index static metadata by extension generation while querying current targets and availability per request.
  • Complete keyboard/range selection, Console occurrence search, bounded Stats trends, visible-list work and neutral Graph presentation with an independent non-Shader consumer.
  • Own native borrows and transient controls by session/frame/window/thread; balance failures, retain Pending retirement, provide licensed CJK glyphs and release exact native registrations.
  • Initialize absent readable editor.ini from the standard Host layout without replacing existing custom/empty documents. Preserve assigned Missing Scene sources and source identities.
  • Feed runtime compilation and IDE projection the selected SDK's actual frozen references, symbols and language facts. Publish script caches through the existing Core atomic transaction.
  • Reuse Core Events, Identity, IO and Serialization rather than parallel managers. Complete neutral capture proofs and property reference scopes retain authoritative serialization and actual History behavior. Generic filesystem host differences stay inside Core IO; product SDK, ABI, backend and deployment policy remain platform-owned.

Verification

Delivered head: dbae93e8f211d45a69cdffdb6afa3a33a0af0fa5. All six exact-head checks pass, including Windows/macOS managed and native jobs, dependency restoration/submission and automatic NuGet submission. See the exact-head verification attachment.

Production implementation is dd5979c613b0fe8ebd9f7026f25001ceee9f8cee. Subsequent changes contain documentation/evidence only: production Git trees and root SDK/build policy are identical. This is source equivalence, not a claim that rebuilt assembly metadata is byte-identical.

  • Local complete preparation and acceptance matrices pass. Contracts: 822 passes and two Unix-only skips on Windows; Workflows: 704; Visual: 524; Lifecycle: 15. Core Serialization/Scene/Core IO: 97/67/41 passes. Profiles overlap and are not summed into a distinct-test count.
  • FlappyBird Editor Debug/Release × D3D11/D3D12/Vulkan: six product combinations, real feature journeys, nine actual Panel types with 100 cycles each, document cycles and ten reload/recovery iterations. Strict ALC barriers remain enforced.
  • Real native input and geometry cover 56 Zoom/DPI/size combinations. Matched native replay includes actual GPU viewport readback; physical-display testing is separate.
  • Full architecture/XML/Wiki: 241 project evaluations, 34,582 API entries and 197 actually compiled examples.
  • Controlled original/current comparison retains all 150 initial trial rows, the initial graph-tail flag and ten predeclared longer graph process trials. All 16,406 frozen runtime/input files match before/after. No repeatable threshold regression remains; worst complete-inspection P95 is 24.5695 ms under the unchanged 25 ms budget, with limited margin.
  • All 35 manifested evidence blobs match their committed hashes. All 54 branch commits use Aaron Liao as author and committer, with no co-author.

Full report and eleven quality judgments · 307-row requirement matrix · portable raw evidence.

Scope and limits

No BGCS source/package, vendor or generated-binding modification; no global/implicit imports, legacy reader, IVT/private reflection or test-only production API. SDK 10.0.402, .NET 10, C# 14 and BGCS 4.1.2 remain fixed.

Manual Mac interaction, physical monitor/DPI transitions, OS IME, audio listening and broad subjective usability remain unexecuted. A 2,000-node graph around 32 ms P95 and explicit 10,000-asset search around 73 ms remain recorded costs, not 60 FPS guarantees. Original failures and negative regressions are preserved. Independent full-engine issues remain outside this scope; #18 is only partially addressed.

Formal owned-cache maintenance succeeds; observed C: free-space gain is about 12.53 GiB, distinct from logical retirement bytes. Five policy-rejected diagnostic runtime directories remain untouched. A post-maintenance Release/D3D11 FlappyBird smoke passes 300 frames with orderly teardown.

Close on master merge

Fixes #13
Fixes #16
Fixes #19
Fixes #27
Fixes #28
Fixes #29
Fixes #30
Fixes #31
Fixes #32
Fixes #33
Fixes #34
Fixes #35
Fixes #36
Fixes #37
Fixes #38
Fixes #39
Fixes #40
Fixes #41
Fixes #42
Fixes #43
Fixes #44
Fixes #45
Fixes #46
Fixes #47
Fixes #48
Fixes #49
Fixes #50
Fixes #51
Fixes #52
Fixes #53
Fixes #54
Fixes #55

Refs #18

All mapped issues remain Open / Verified on branch / awaiting merge. This PR is prepared for review; it must not be merged automatically.

Separate feature operations from presentation, own UI state per session, and
unify identity-aware selection and reversible editing through Core services.

Add scoped Play identity routing, UI-neutral labels, guarded native borrows,
architecture constraints, verified callers and current acceptance evidence.
Keep boxed reference-bearing targets weak across selection, focus and snapshots,
while retaining known neutral scalar values for host workflows.

Reference reusable authoring APIs directly from the script SDK and preserve the
view-owned public drop contracts. Validate actual assembly export declarations
and compile the complete contract probe from an independent SDK output.

Record the final 604 local contract passes, product checks and ownership review.
Prepare complete source entries before updating the active index, reuse unchanged Core identities, and retire removed entries after successful preparation. Cover identity stability and failed enumeration through public filesystem contracts. Refs #43.
Retain object and component source identities within the existing structural snapshot, validate current Core identities on each capture, and freeze Systems only for the active write. Remove per-row capture-result and enumerator allocations while preserving canonical bytes, failure checks, and retirement ownership.
Keep SDK output-scope validation in the parent and run the actual mismatched assembly load and strict collection checks in an owned child. Retire the temporary directory after complete process exit without weakening identity, unload, timeout, or cleanup assertions.

FLwolfy commented Oct 30, 2026 •

Copy link
Copy Markdown
Member Author

Final delivery verification — Ready for review

Completed and Ready, verified at 2026-10-30 13:00:00 UTC.

  • PR refactor(editor): unify UI ownership and editing workflows #26 is Open, draft:false, merged:false, targeting master. No automatic merge was performed.
  • Delivered head: dbae93e8f211d45a69cdffdb6afa3a33a0af0fa5.
  • Production implementation: dd5979c613b0fe8ebd9f7026f25001ceee9f8cee.
  • The complete diff after production acceptance contains only 43 documentation/evidence files. Git tree IDs for src/backends/platforms/build/tools/tests/entry and root SDK/build policy bytes match. This proves source equivalence, not identical rebuilt assembly metadata.
  • All 35 manifested evidence blobs match their exact committed lengths and SHA-256. All 54 branch commits use Aaron Liao hsuankailiao@gmail.com as author and committer; no co-author. Final local working tree and companion/BGCS checkouts are clean.

Exact-head CI

All six checks belong to the delivered SHA and completed successfully; the check list is complete, not paginated.

Check Result
osx-arm64 Passed
Managed / windows-2022 Passed
windows-x64 Passed
Managed / macos-15 Passed
Restore and submit NuGet dependencies Passed
submit-nuget Passed

Engine CI and NuGet dependency graph both conclude success. The native Windows/ARM64 jobs include Debug/Release Editor, real renderer smoke, restored BGCS identity and repeated reuse, complete tests, source-independent Support Pack, current Wiki and evidence upload. These are current results, not historical substitutes.

Plan and issue completion

Final report · 307-row matrix · portable evidence.

The immutable source report was authored before its containing commit's CI. This attachment now resolves all fifteen report-authoring delivery conditions at original-plan lines 14, 15, 51, 74, 95, 98, 710, 716, 719, 720, 734, 738, 741, 742, 743 as Passed: applicable implementation/acceptance, actual issue mapping and English verification, individual closing references, real current ARM64/Windows CI, source-equivalent final candidate and exact-head results. The matrix's 283 local Passed rows plus these 15 resolved delivery conditions total 298 applicable completed rows; seven vocabulary definitions and two future user-authorized post-merge audit rules remain explicitly not separate executed functional tests.

All 32 issues (#13, #16, #19 and #27–#55) were reread before writing; their bodies had no concurrent changes. Each English verification body was posted and reread byte-for-byte, with the expected title format and Open state. PR body has 32 individual Fixes lines. Broader #18 has only Refs and a scoped evidence comment; unrelated engine issues remain outside this closure. Issues close when the user merges to master. The future post-merge audit is conditional, not falsely called executed now.

Evidence and honest limits

Complete local preparation, profiles, formal companions, six Windows FlappyBird combinations, native scale/input, strict lifecycle/reload, five cold/warm publications, complete Wiki and controlled performance pass on the recorded production implementation. All initial failures and negative cases remain preserved. The initial ten-frame graph P95/max flag is retained; a predeclared longer five-pair repeat through the same unmodified fixture does not reproduce a persistent threshold regression. Worst complete-inspection P95 is 24.5695 ms under 25 ms, with limited margin. This does not establish universal 60 FPS or subjective perfection.

Core IO's generic filesystem primitive legitimately distinguishes Windows SDK no-replace move from public POSIX link. The reviewed report explicitly states this; product SDK/ABI/backend/deployment policy remains platform-owned. AtomicFile.IsCandidatePath's real external consumer and the affected IO files are documented. No BGCS source/package, vendor or generated binding was modified; no parallel foundational system, legacy reader, global/implicit import, IVT/private reflection or test-only production API was introduced.

Manual Mac interaction, physical displays/DPI transitions, OS IME, audio listening and broad subjective usability remain unexecuted. Real ARM64 automated results above do not substitute for those manual/device checks. Eleven quality dimensions are assessed against concrete engineering standards in the report.

Resources

Formal owned-cache maintenance exited 0: 90,039,337,805 logical bytes retired; observed C: free 77.79 → 90.32 GiB (+12.53 GiB). Logical bytes and actual volume space are distinct. Five earlier policy-rejected diagnostic runtimes remain untouched; no user or global SDK/NuGet content was deleted. A post-maintenance Release/D3D11 FlappyBird run passes 300 frames, orderly teardown and the unchanged 180-second deadline. The requested Glass.aiff is unavailable on Windows; silent operation was respected.

The preceding dbd7a2f delivery was superseded by the factual Core IO documentation clarification. Its old checks are not used for the current result. No production code changed in that clarification.

@FLwolfy
FLwolfy marked this pull request as ready for review October 30, 2026 12:58
@FLwolfy
FLwolfy merged commit e4eb952 into master Oct 30, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment