Repository navigation
feat(harness): lift OmO's single-select question on pi panes - #413
Closed
welldoingk wants to merge 1 commit into
Closed
welldoingk wants to merge 1 commit into
welldoingk wants to merge 1 commit into
Conversation
Herdr reports OmO as pi, which had no adapter, so OmO's ask_user_question showed no buttons in Chat. The pi adapter lifts the one-question single-select dialog; a tap sends the printed digit alone. Multi-select, the free-text field and multi-question dialogs stay raw with the Escape card. The editor is read in both stock pi and OmO layouts, so stock pi sends keep working on the guarded reply path.
Contributor
Author
|
Withdrawing this for now. Live testing on a wide pane found that OmO draws a sidebar on the same rows as the dialog, including the rules, and the sidebar text changes every second. That breaks both detection and the tap's screen binding. I will reopen once that is handled and re-verified. |
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.
Closes #412.
What changed, and why
Herdr reports an OmO session as
agent: "pi", andpihad no adapter. When OmO's built-inask_user_question/request_user_inputtool opened a single-choice question, the phone showedno buttons, and the composer stayed open on a screen where typing would land in the dialog.
This adds a
piadapter, scoped to what was captured: OmO 5.1.30's one-question,single-select Ask screen and its composer.
web/src/lib/harness/pi/ask.tslifts that dialog as aprompt-selectcard. A tap sendsthe option's printed digit alone (
["2"]). OmO's key handler activates the option andsubmits a one-question single-select at once, which was probed live. No arrow walk and no
trailing Enter, and no new action-layer recipe. Cancel sends the printed
esc.web/src/lib/harness/pi/composer.tsreads the pi editor in both layouts Herdr reports aspi: stock pi (draft at column zero) and OmO (❯prompt), each between two rules over styledstatus rows, with the running-turn label on the top rule. This matters beyond OmO: registering
any
piadapter moves every pi pane from the one-step send to the guarded send, so without ita stock pi send would be refused. A live phone send to stock pi 0.85.1 typed, read back and
submitted.
cancelKey: "Escape"plusmodalOnScreen, which needs one of the three captured Ask footers.Multi-select and the Other editor therefore stay raw and get the unread-dialog card.
how: "capture"), seven fixturespi--omo-v5130-*.txtand twostock pi fixtures
pi--v0851-*.txt.Deliberately not lifted
enter toggle/tab next / Submit: Enter toggles rather than submits, andno shared model carries that recipe.
Type your own answer...row and its editor. Captured and kept raw. No digitbuttons, no composer typing.
and unknown footers.
extension draws a different screen (
["N", "Enter"],[ ]/[x]), which is what feat(harness): add pi harness adapter and interactive dialog lifting #397 targets.Those screens keep the raw mirror here.
Relation to #397
#397 also registers
pi, for pi 1.1.0 with a question extension. The two grammars do not overlap:OmO's screen is the
Ask userpanel with1-9 select … esc cancel. Whichever lands second hasto compose both into one adapter. I am happy to rebase onto #397 if that is preferred.
Evidence
herdr pane read --format ansi --raw, cut to the dialog frame. No secrets.See
web/src/fixtures/panes/README.mdandweb/src/lib/harness/pi/ASK_NOTES.md.3→Color: Blue, dialog closed. Down/Up move only the pointer.Enter on Other opens the editor. Escape cancels.
the card with all three options and their descriptions. With the pointer on Red, a tap on
Green answered
Color: Greenand the agent repliedBROWSER_ANSWER=Green.describeAdapterConformanceover the two lifted captures, with every other corpus file asforeign or neutral.
Checks
bun run build(version gate, root + web typecheck, bundle)bun run lintcd web && bun run test: 403 files, 22,883 passedbun test ./bridge ./cli ./scripts(5543 + 2025 + 296, 0 fail),collie-ctl.test.sh, and every shell suite aftercollie-cli.test.shscripts/collie-cli.test.shhung locally at the systemdcollie startscenario (WSL host); this branch touches onlyweb/src, so CI is the evidence for that suiteCHANGELOG line for the maintainer
Under
### Added:reports as pi, now shows its options as buttons; multi-select and typed answers stay in the
terminal view.