Skip to content

SEP Phase 8 (smooth): render-block v2 DSL parity (web + TUI)#161

Merged
brentrager merged 2 commits into
mainfrom
th-7bd3d5-sep-phase8
Jul 3, 2026
Merged

SEP Phase 8 (smooth): render-block v2 DSL parity (web + TUI)#161
brentrager merged 2 commits into
mainfrom
th-7bd3d5-sep-phase8

Conversation

@brentrager

Copy link
Copy Markdown
Contributor

Final SEP phase — smooth frontend slice (pearl th-7bd3d5).

What

  • Web (UiRelay.tsx): the daemon ui/* relay renders the interactive widget kind (body + keybinding legend) and aligns table/diff/stack field names to the formalized DSL (columns/patch/children), keeping pre-Phase-8 aliases as fallback.
  • TUI (smooth_code::sep_host::RenderBlock): reduced-fidelity table/diff/stack/widget kinds (+ tests) so a widget-driven extension degrades to the terminal.

Deferred (out of scope, reasons)

  • Live TUI widget/key routing — needs the Phase 8 engine-pin cutover (adds dispatch_widget_key) + a daemon-relayed live UiSink (daemon/auto-mode epic).
  • [resources] themes application — needs a theme.rs runtime refactor (TUI) or daemon color plumbing (web); discovery alone is dead code. Follow-up pearls filed.

Tests

smooth-code sep_host tests green (8); web SPA builds; clippy adds no warnings to touched code.

🤖 Generated with Claude Code

Web UiRelay RenderBlock: render the interactive `widget` kind (body + keybinding
legend); align table/diff/stack fields to the DSL (columns/patch/children) with
pre-Phase-8 aliases as fallback.

TUI smooth_code::sep_host::RenderBlock: add reduced-fidelity table/diff/stack/
widget kinds (+ tests) so a widget-driven extension degrades to the terminal.

Deferred with reasons (follow-ups): live TUI widget/key routing (needs the
Phase 8 engine-pin cutover + a daemon-relayed UiSink) and [resources] themes
application (needs a theme.rs runtime refactor / daemon color plumbing).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Jul 3, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: d6d6b9a

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@smooai/smooth Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@brentrager brentrager enabled auto-merge (squash) July 3, 2026 12:49
@brentrager brentrager merged commit 5e6418a into main Jul 3, 2026
2 checks 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