Skip to content

[Improve] Make guided agent interactions reliable - #2470

Closed
roomote-roomote[bot] wants to merge 126 commits into
feature/setup-integrations-1qjp5vnseogbgfrom
feature/guided-interactions-2hkp457mhpgoz
Closed

[Improve] Make guided agent interactions reliable#2470
roomote-roomote[bot] wants to merge 126 commits into
feature/setup-integrations-1qjp5vnseogbgfrom
feature/guided-interactions-2hkp457mhpgoz

Conversation

@roomote-roomote

Copy link
Copy Markdown
Contributor

​Created by Roomote. Follow up by mentioning @roomote-roomote, in the web UI, or in Slack.

What changed

  • Keep guided questions and the human's selected answers in chronological Session history, attribute answers to the responding person, hide duplicate request_user_input tool rows, and keep the composer available beside optional questions.
  • Make web answers exactly-once, carry stable option IDs with legacy-label compatibility, durably resume setup turns, and coalesce setup changes into one deterministic model turn.
  • Keep the setup funnel prompt-owned and reorderable while code enforces authorization, readiness, persistence, and launch invariants. Empty integration discovery now completes server-side.
  • Share one effective integration-status projection across setup and Settings, invalidate capability caches after connection changes, and harden Discord/shared communication actions with guarded cleanup, resume rebinding, stronger callback tokens, and reply-target authorization.

Why this change was made

Setup Sessions could show visible tool plumbing before cards, lose or misattribute human choices, and produce out-of-order narrative from independently scheduled setup events. Guided interactions also had inconsistent retry, connection-refresh, and chat-adapter guarantees.

Impact

Guided interactions now read as one coherent conversation and can be answered, skipped, or reordered without relying on the model to enforce persistence or exactly-once behavior. Existing persisted choices and legacy Discord cards remain supported.

Dependency

This is a stacked draft based on PR #2402, targeting its branch feature/setup-integrations-1qjp5vnseogbg. Review and test #2402 first; after #2402 lands, rebase this branch onto develop and retarget this PR before merge.

Validation and local testing

Passed:

  • pnpm check-types:fast
  • pnpm lint:fast
  • pnpm knip (only the existing Mint configuration hint)
  • 142 focused web client tests
  • 41 focused web server tests
  • 370 focused cloud-agent tests
  • 119 focused SDK tests
  • 32 focused communication/API tests
  • 9 focused shared-type tests
  • Pre-push oxlint, residual ESLint, fast typechecks, and Knip

The authenticated browser walkthrough was canceled because the preview browser was not logged in. No browser proof or external OAuth completion is claimed.

Local verification:

  1. git fetch origin
  2. git switch feature/guided-interactions-2hkp457mhpgoz
  3. mise install && pnpm install
  4. Start the normal local stack with pnpm dev (or use the repository's configured Roomote environment).
  5. Open a setup Session and verify: the question card appears without a duplicate tool row; an optional question leaves the composer available; a submitted answer remains in chronological history under the human's identity after reload; setup can skip or reorder tool discovery; closing a zero-match discovery step does not strand readiness events.
  6. For integration refresh, open a supported connection dialog, cancel or complete authorization with your own test account, return to the same Session, and verify status refreshes. Do not use production credentials.

No screenshots or screencasts are included because the authenticated state was unavailable and further login was explicitly canceled.

mrubens and others added 30 commits July 10, 2026 19:40
SlackSetupExperience's intro screen owns the step action buttons, and it
is skipped when the Slack config is already saved (savedSatisfied). But
StepAuthEnvVars's providerOwnsActions check was missing the matching
!savedSatisfied clause, so revisiting the auth step with saved Slack
credentials rendered the value form with no action button at all,
stranding the user on the page.

Align providerOwnsActions with the intro guard and add a regression
test for the saved-Slack revisit path.

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Hotfix-only cut from main with the #299 Slack setup Continue fix.
[Chore] Release Roomote 0.4.2 hotfix for saved Slack continue
Drop the reverted analytics Model group-by line and document
notification destination and homepage dump-flash fixes now included
on release/v0.5.0.
Merge latest develop (#370, #371), document the Blaxel Compose --wait
fix on the existing 0.5.0 notes, remove the shipping pending changeset,
and quiet residual oxlint/ESLint friction from that merge.
mrubens and others added 17 commits September 4, 2026 20:37
Co-authored-by: @daniel-lxs <57051444+daniel-lxs@users.noreply.github.com>
…ma-v1.3.2

[Fix] Release Roomote 1.3.2 for Fast integration schema failures
Reviewed resolution: 3ada941
Review PR: #2355
….4.1

[Fix] Release Roomote 1.4.1 for failing GPT-5.x integration lookups
Reviewed resolution: 5f76599
Review PR: #2404
@roomote-community

roomote-community Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

All reported issues are addressed in the current branch.

  • A persisted structured answer can be stranded before its continuation is durably scheduled.
  • Stable option IDs are rendered as internal IDs instead of the selected labels.
  • Failed request_user_input calls are hidden even when no interaction card follows.
  • A retried setup preset can skip its missed reconciliation turn.

Fixed through 05fe0e0

Comment thread apps/web/src/app/(sandbox)/sessions/[sessionId]/FastSessionTranscript.tsx Outdated
Comment thread packages/types/src/acp.ts
Comment thread apps/web/src/trpc/commands/fast-sessions/index.ts Outdated
@roomote-roomote

roomote-roomote Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor Author

Fixed all four review findings through 05fe0e0: saved generic and trusted-setup answers recover durable continuation, visible history maps option IDs to labels, and failed input calls remain visible when no card exists. All four review threads are resolved. The branch is based directly on main, contains the required setup-discovery work, and excludes unrelated develop commits. Platform tooling closed #2470 while creating standalone draft #2473 and then created duplicate #2475; restoring #2470 itself now requires an authorized reopen/retarget operation and closing the duplicates. Browser/OAuth proof timed out and remains unverified.

Comment thread apps/web/src/trpc/commands/fast-sessions/index.ts
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.

4 participants