Skip to content

Fix remaining SMS/Twilio assistant-scoping parity gaps#7355

Merged
noanflaherty merged 1 commit into
mainfrom
codex/sms-call-parity-fixes
Feb 24, 2026
Merged

Fix remaining SMS/Twilio assistant-scoping parity gaps#7355
noanflaherty merged 1 commit into
mainfrom
codex/sms-call-parity-fixes

Conversation

@noanflaherty
Copy link
Copy Markdown
Contributor

@noanflaherty noanflaherty commented Feb 24, 2026

Summary

  • make call-side Twilio caller-id resolution assistant-aware so assistant_number uses sms.assistantPhoneNumbers[assistantId] before global fallback
  • pass assistant scope through call_start, call HTTP routes, and call-domain start flow
  • load sms.assistantPhoneNumbers in gateway loadConfig() at startup instead of relying solely on config-file watcher mutation
  • add regression tests for assistant-scoped call caller-id and gateway startup mapping load

Validation

  • cd assistant && bun test src/__tests__/call-domain.test.ts
  • cd assistant && bun test src/__tests__/handlers-twilio-config.test.ts
  • cd assistant && bun test src/__tests__/call-routes-http.test.ts
  • cd assistant && bun test src/__tests__/sms-messaging-provider.test.ts src/__tests__/channel-guardian.test.ts
  • cd assistant && bunx tsc --noEmit
  • cd gateway && bun test src/__tests__/config.test.ts src/http/routes/sms-deliver.test.ts src/http/routes/twilio-sms-webhook.test.ts src/__tests__/sms-ingress-guard.test.ts
  • cd gateway && bunx tsc --noEmit

Open with Devin

@noanflaherty noanflaherty merged commit b4dcb93 into main Feb 24, 2026
0 of 3 checks passed
@noanflaherty noanflaherty deleted the codex/sms-call-parity-fixes branch February 24, 2026 00:44
Copy link
Copy Markdown
Contributor

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 3 additional findings.

Open in Devin Review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 57a05caae7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread assistant/src/calls/call-domain.ts
@noanflaherty
Copy link
Copy Markdown
Contributor Author

Addressed in #7423

ashleeradka pushed a commit that referenced this pull request May 21, 2026
…(LUM-1763)

Back-port of vellum-ai/vellum-assistant-platform#7461.

Two related iOS prechat polish fixes that landed on the platform
side after the onboarding paths were frozen:

1. **Safe-area top spacing.** `NameStepScreen` and `VibeStepScreen`
   were using a flat `pt-4`, which on iOS slides the back-button
   row under the status bar / Dynamic Island. Switch to
   `calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 1rem)`
   so the standard 1rem padding sits on top of the system inset.

2. **Back-nav persistence.** `PreChatFlow` resets to screen 0 on
   every mount, so an iOS user who taps through to the vibe step
   and then hot-reloads (or returns after the OS reclaims memory)
   is silently dropped back to the name step. Remember the
   position in `sessionStorage` under `prechat_native_screen`;
   restore on mount; clear on back-from-vibe and on
   finishNativePreChat. Storage writes are wrapped in try/catch
   so private-mode contexts don't throw.

The other PR in LUM-1763 (#7355 — alex-nork's Sanity connection
for the content-automation cohort) is deferred as a cohort-
specific feature, not a small drift fix.

Verified locally: lint, typecheck clean.

https://claude.ai/code/session_01JPGu4yGPTL4JoLaPuqpEW2
ashleeradka added a commit that referenced this pull request May 21, 2026
…1416)

* fix(web): iOS onboarding safe-area + back-nav persistence in prechat (LUM-1763)

Back-port of vellum-ai/vellum-assistant-platform#7461.

Two related iOS prechat polish fixes that landed on the platform
side after the onboarding paths were frozen:

1. **Safe-area top spacing.** `NameStepScreen` and `VibeStepScreen`
   were using a flat `pt-4`, which on iOS slides the back-button
   row under the status bar / Dynamic Island. Switch to
   `calc(var(--safe-area-inset-top, env(safe-area-inset-top, 0px)) + 1rem)`
   so the standard 1rem padding sits on top of the system inset.

2. **Back-nav persistence.** `PreChatFlow` resets to screen 0 on
   every mount, so an iOS user who taps through to the vibe step
   and then hot-reloads (or returns after the OS reclaims memory)
   is silently dropped back to the name step. Remember the
   position in `sessionStorage` under `prechat_native_screen`;
   restore on mount; clear on back-from-vibe and on
   finishNativePreChat. Storage writes are wrapped in try/catch
   so private-mode contexts don't throw.

The other PR in LUM-1763 (#7355 — alex-nork's Sanity connection
for the content-automation cohort) is deferred as a cohort-
specific feature, not a small drift fix.

Verified locally: lint, typecheck clean.

https://claude.ai/code/session_01JPGu4yGPTL4JoLaPuqpEW2

* chore(web): extract goToVibeStep closure (review feedback)

Non-blocking observation from the vex-bot review on #31416:
`onContinue` and `onSkip` on the iOS NameStepScreen had the same
4-line body (setScreen + sessionStorage.setItem in try/catch),
which invites drift if one transition path changes and the other
doesn't. Extract a `goToVibeStep` closure inside the screen===0
arm so both callsites point at the same code.

https://claude.ai/code/session_01JPGu4yGPTL4JoLaPuqpEW2

---------

Co-authored-by: Claude <noreply@anthropic.com>
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