Skip to content

Add ten native consumer adapters and Unicode regressions - #10

Closed
PerchAnton wants to merge 2 commits into
interaction-check/terminal-input-adaptersfrom
interaction-check/terminal-widget-adapters
Closed

PerchAnton wants to merge 2 commits into
interaction-check/terminal-input-adaptersfrom
interaction-check/terminal-widget-adapters

Conversation

@PerchAnton

@PerchAnton PerchAnton commented Oct 26, 2026 •

Copy link
Copy Markdown
Owner

Continues #3 after renaming the branch to interaction-check/terminal-widget-adapters. The commits and review scope are unchanged.

Adds replay adapters for prompt-toolkit, Textual, Urwid, asciimatics, Reedline, Rustyline, rat-salsa, promptkit, tcell v3 and gocui. Each calls native APIs with pinned sources and documented coverage boundaries. This PR builds on #9 and targets its branch.

Local validation: 30 new scenarios / 160 steps pass; all 39 runner/protocol tests pass. Python adapters pass Ruff; three Rust adapters pass strict Clippy; three Go adapters pass protocol tests with race detection and go vet. Selected native Python suites also pass: Textual 301, prompt-toolkit 21, Urwid 82 (+36 subtests), asciimatics 73.

The prototypes found two test-helper bugs. Textual deliberately pins PerchAnton/textual@c22e522 for Textual #6745. gocui pins PerchAnton/gocui@19c00ba for gocui #141; its native suite, scoped Unicode race test and vet pass. Both proposed fixes await upstream discussion/approval. These pins do not claim upstream adoption.

Rat-salsa scenarios use its explicit native UndoBuffer grouping API. promptkit cancellation uses its documented Ctrl+C binding. Existing upstream PRs for Urwid cursor wrapping, promptkit selection scrolling and Rustyline rexpect tests are separate work.

CI adds Linux/Windows Python widgets, three Go consumers and three Rust consumers (31 jobs total). All 31 jobs pass on head 055dfc2 in both pull-request CI and push CI. The initial Urwid lint failure was reproduced from the repository working directory and fixed.

Published proposals: python-prompt-toolkit, urwid, asciimatics, reedline, rustyline, rat-salsa, promptkit, tcell. The two bug reports above link the prepared fix branches; maintainer approval remains pending. No runner-core changes or runtime dependencies are added to upstream projects.

Archived on 2 November 2026. This adapter series is preserved in the archive branch at ad612a7. The standalone jsonpatch example from #14 was merged into main in #34.

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