Skip to content

feat(ui)!: migrate the config editor to OpenUI - #100

Merged
MarcStdt merged 12 commits into
masterfrom
codex/local-openui-rc
Oct 28, 2026
Merged

MarcStdt merged 12 commits into
masterfrom
codex/local-openui-rc

Conversation

@MarcStdt

@MarcStdt MarcStdt commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Compile a TypeScript guest with SDK 4 and declare the UI in src/view.openui.
  • Compose the editor in src/view.openui from the restricted Druid/shadcn library; keep parsing, validation, lossless edits, secret masking and save verification in the guest.
  • Stage and validate both app.wasm and app.openui for all released family mappings.
  • Use Node 24 in CI, pin the released CLI/runtime to v0.1.281 and remove retired component/platform SDK dependencies.

Druid-enforced editor composition

  • Build schema-driven sections and controls for Minecraft and other families in the OpenUI document, rather than a bespoke frontend ConfigEditor.

  • Project masked, display-ready field data in the guest; normalize changed values while retaining action context.

  • Preserve Form/Raw editing, validation, unsaved edits across file switches, non-Minecraft raw files, failure handling and save verification.

  • Restrict author-controlled styling to padding/margin tokens; inherit Druid's existing design.

  • Include the latest master Scroll definitions and add the missing Forge 26.3 catalog publish entry. Catalog publication tests pass for 18 categories and 128 artifacts, with the runtime pinned to released v0.1.281.

Scope and base

Targets master and includes the prerequisite changes from #90, so the new editor and catalog publication ship together rather than publishing an intermediate legacy SDK version. Generated local WASM/document output is not committed; CI rebuilds from source. The existing local WASM modification was preserved.

Verification

  • UI type-check/build and all 113 tests passed.

  • Go staging tests and UI coverage for all 128 released family mappings passed.

  • Seeded local Harbor and pulled a fresh artifact containing both UI assets.

  • Live browser editing, save/read-back verification and hot reload passed with the coordinated SPA/runtime changes.

  • Browser-verified responsive layout, themed dropdowns, keyboard tab navigation, invalid-value Save blocking and real save/read-back/reload; original configuration bytes restored.

Readiness

Shipped and verified. SDK 4.0.0-rc.1 is available on public npm next (release run 40609450241 succeeded); the corrected resumable workflow also passed (40611550329, SDK PR #20 merged). Public-tarball lockfiles are committed and clean-install verification passes: SPA 116 tests/type-check/build and Scroll UI 113 tests/type-check/build.

Runtime v0.1.281 is deployed and 1/1 Ready (40610741048). Monorepo PR #386 is merged and its complete production pipeline passed (40611322829). The live SPA entry and OpenUI chunk match the clean tested build byte-for-byte; public Core, Scrolls and runtime health checks pass.

Scrolls PR #100 is merged and public release 40642319790 succeeded. All 128 public artifacts were independently checked for both app.wasm and app.openui; fresh Vanilla and Forge 26.3 pulls contain the exact authored document and valid WASM. Existing game deployments were not automatically upgraded.

Coordinated PRs

Use dedicated account auth and private project robots for staging.

Import immutable releases and publish through the customer lifecycle;

keep private PR previews in separate repositories. Leave workflows

unchanged pending release-environment and credential approval.

Verify real local gateway/Core/Harbor retries with deterministic CLI

builds and clean up only identity-verified disposable fixtures.
Route releases and private previews through verified lifecycle publication with immutable revisions and fail-closed provisioning guards. Dedicated credentials and protected environments remain rollout prerequisites.

Recover the September 29 local draft and its offline regression coverage into the durable workspace. No remote publication performed.
Requires the platform command-controls package release before merge. Keep local registry versions out of the public lockfile.
Regenerate with the npm 10 resolver used by CI. The newer local npm resolver omitted optional esbuild peer entries required by npm ci.
BREAKING CHANGE: build and stage a WASM guest plus an OpenUI document with SDK 4. The SPA renders the trusted editor; the guest retains configuration behavior and save verification.
BREAKING CHANGE: compose the editor from the restricted Druid component library and pass control changes through value parameters. Preserve file handling, validation, secrets and save verification.
@MarcStdt
MarcStdt changed the base branch from codex/team-scroll-lifecycle to master October 27, 2026 23:42
@MarcStdt
MarcStdt marked this pull request as ready for review October 27, 2026 23:46
@MarcStdt
MarcStdt merged commit 7359fdb into master Oct 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant