Repository navigation
docs(adr): add ADR-0032, structured Workshop editor form factor and stack - #800
Merged
Merged
Conversation
…tack Proposes wright ui: a local web UI over ToolService for raw Workshop projects, built with Svelte 5, TypeScript, and Vite in a top-level ui/ directory and embedded behind a ui Cargo feature.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds ADR-0032. It decides the form factor that ADR-0029 left open for a structured editing view: what the view is, where it lives, and how it is built.
wright ui [INPUT]serves a local web UI on loopback and opens it in the browser. It is not a hosted service, an editor extension, or a desktop shell.wright-agent/v1bodies to one local endpoint and gets the results back unchanged.127.0.0.1on an ephemeral port.HostorOriginare refused. No CORS headers.wright uiapplies theeditStatementstransaction after re-checkinginputIdentity. The page never touches files.ui/directory inwright, outside the Rust workspace.svelte.$state.snapshot.schemas/wright-agent-v1.schema.jsonandworkshop-rs'srule-content-v1.schema.json. A stale copy fails CI.ui/, not committed, and embedded behind auiCargo feature that release builds enable.wright uireports that the build has no UI and exits 2. Rust-only builds need no Node.svelte-check, unit tests, the build, and a 100 KB gzip size budget.editStatements), then full dropdowns (listEntries).Why now
The prototype (
practice-range, 139 rules) covers the interaction end to end. It also shows the limits of plain JavaScript: the whole form is rebuilt after every change, and untyped nodes caused real defects. Its only link to Wright is a Python bridge, because a browser cannot reachwright serveover stdio.Review
Accepted by the owner. The four open points were accepted as drafted: the command name
wright ui, theuiCargo feature with exit 2 when it is absent, the 100 KB gzip size budget, and host-side writes in decision 5.Documentation only; no code or behavior changes.