Skip to content

[SAL-55] Add orchestration launch modal with placeholders#10382

Open
jasonkeung wants to merge 24 commits intomasterfrom
jason/orchestration-launch-modal
Open

[SAL-55] Add orchestration launch modal with placeholders#10382
jasonkeung wants to merge 24 commits intomasterfrom
jason/orchestration-launch-modal

Conversation

@jasonkeung
Copy link
Copy Markdown
Contributor

@jasonkeung jasonkeung commented May 7, 2026

Description

Figma: https://www.figma.com/design/heSaG5ODNKUVgJwCGjJDcs/-Orchestration--launch-modal?node-id=1-3823&m=dev
Demo Screenshot:
Screenshot 2026-05-08 at 5 08 36 PM

Wires up the orchestration launch modal into the workspace. This includes the feature flag, settings field, one-time modal trigger logic, and view integration. Placeholder image and link for now

What: Adds the plumbing and UI for the orchestration launch modal — a one-time modal that onboards users to the Oz orchestration feature.

Why: Part of SAL-55 — orchestration launch/in-app onboarding.

How:

  • Added OrchestrationLaunchModal feature flag, enabled for dogfood builds
  • Added did_check_to_trigger_orchestration_launch_modal boolean to AISettings (private, globally synced, not respecting user sync setting)
  • Added state + trigger logic to OneTimeModalModel: checks the feature flag and settings flag to determine if the modal should be shown on startup
  • Wired OrchestrationLaunchModal view into the workspace: initialization, event handling (OrchestrationLaunchModalEvent::Close), focus management, and conditional rendering
  • Added debug-only workspace actions: OpenOrchestrationLaunchModal and ResetOrchestrationLaunchModalState
  • Modal UI: hero image, title/description, three feature rows (cloud harnesses, multi-agent orchestration, agent memory), and a CTA button
  • "Research preview" badge on the Agent Memory feature row is clickable and links to AGENT_MEMORY_URL

Note: The hero image and URL (LEARN_MORE_URL) are currently placeholders — pending final asset delivery and link confirmation.

Linked Issue

  • The linked issue is labeled ready-to-spec or ready-to-implement.
  • Where appropriate, screenshots or a short video of the implementation are included below (especially for user-visible or UI changes).

Screenshots / Videos

Testing

Tested locally with dogfood feature flag enabled. Debug actions allow manually opening and resetting the modal state.

Agent Mode

  • Warp Agent Mode - This PR was created via Warp's AI Agent Mode

Co-Authored-By: Oz oz-agent@warp.dev

jasonkeung and others added 9 commits May 5, 2026 11:56
- Add taskGitCredentials types to schema.graphql (verified against staging)
  and add to clientQueries allowlist in client-schema.ts
- Add task_git_credentials.rs GraphQL query file (cynic) following the
  task_secrets pattern
- Add GitCredential struct and get_task_git_credentials to AIClient
  trait with a ServerApi implementation

Co-Authored-By: Oz <oz-agent@warp.dev>
- Add driver/git_credentials.rs: atomic writes to ~/.git-credentials
  and ~/.config/gh/hosts.yaml, one-time git config setup (credential.helper
  store, url.insteadOf), git identity configuration, and refresh_loop()
  which re-fetches credentials every 50 minutes
- Extend fetch_secrets_and_attachments to call taskGitCredentials in
  parallel at startup; writes credential files and git config
- Add futures::select! refresh loop in run_internal, racing the harness
  execution against the infinite refresh loop for both Oz and ThirdParty
  harnesses

Co-Authored-By: Oz <oz-agent@warp.dev>
- Write ~/.git-credentials and ~/.config/gh/hosts.yaml temp files with
  0600 permissions (mode + set_permissions) matching the existing pattern
  in write_codex_auth_json, preventing other users from reading tokens
- Add run_git_config_add (--add flag) so multi-value insteadOf entries
  coexist instead of the second overwriting the first
- Derive SSH→HTTPS URL rewrites from credential hosts rather than
  hardcoding github.com, using --add for both scp-style and ssh:// forms
  per host

Co-Authored-By: Oz <oz-agent@warp.dev>
Co-Authored-By: Oz <oz-agent@warp.dev>
On transient failure, retry up to 3 times with 1min, 2min, 4min delays,
keeping all retries within the ~10-minute buffer before token expiry.

Co-Authored-By: Oz <oz-agent@warp.dev>
- Add OrchestrationLaunchModal feature flag (enabled in dogfood)
- Add did_check_to_trigger_orchestration_launch_modal setting to AISettings
- Add OneTimeModalModel state and trigger logic for the orchestration launch modal
- Wire OrchestrationLaunchModal view into workspace (init, focus, events, rendering)
- Add debug actions: OpenOrchestrationLaunchModal, ResetOrchestrationLaunchModalState

Co-Authored-By: Oz <oz-agent@warp.dev>
@cla-bot cla-bot Bot added the cla-signed label May 7, 2026
@jasonkeung jasonkeung marked this pull request as ready for review May 7, 2026 21:01
@oz-for-oss
Copy link
Copy Markdown
Contributor

oz-for-oss Bot commented May 7, 2026

@jasonkeung

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Copy link
Copy Markdown
Contributor

@oz-for-oss oz-for-oss Bot left a comment

Choose a reason for hiding this comment

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

Overview

This PR wires a new orchestration launch modal into the workspace one-time modal flow and also adds git credential file setup/refresh plumbing for agent runs.

Concerns

  • Manual testing evidence is missing for the new user-visible modal. The PR description's Screenshots / Videos section is empty and says evidence will be added later; repo guidance requires screenshots or a screen recording for UI changes that can be manually tested.

Verdict

Found: 0 critical, 1 important, 0 suggestions

Request changes

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

jasonkeung and others added 3 commits May 7, 2026 18:40
- Extend FeatureItem with badge_url to support linked badges
- Make 'Research preview' badge on Agent Memory clickable (links to AGENT_MEMORY_URL placeholder)
- Update LEARN_MORE_URL to placeholder; both URLs are pending final links
- Hero image is also still a placeholder pending asset delivery
- Remove excessive comment before did_check_to_trigger_orchestration_launch_modal setting

Co-Authored-By: Oz <oz-agent@warp.dev>
Conflicts resolved:
- app/src/ai/agent_sdk/driver.rs: keep ours (GitCredentialRefresh flag already removed)
- app/src/ai/agent_sdk/mod.rs: keep ours (GitCredentialRefresh flag already removed)
- crates/warp_features/src/lib.rs: keep both OrchestrationLaunchModal and GitCredentialRefresh in DOGFOOD_FLAGS

Co-Authored-By: Oz <oz-agent@warp.dev>
@jasonkeung jasonkeung marked this pull request as draft May 8, 2026 04:43
@jasonkeung jasonkeung marked this pull request as ready for review May 8, 2026 04:43
@oz-for-oss
Copy link
Copy Markdown
Contributor

oz-for-oss Bot commented May 8, 2026

@jasonkeung

I'm starting a first review of this pull request.

You can view the conversation on Warp.

I completed the review and no human review was requested for this pull request.

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Copy link
Copy Markdown
Contributor

@oz-for-oss oz-for-oss Bot left a comment

Choose a reason for hiding this comment

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

Overview

This PR adds the Orchestration launch modal flag, one-time trigger state, workspace wiring, and the modal UI.

Concerns

  • The new modal setting is only marked checked inside the existing-user trigger path. Unlike the Oz/OpenWarp modal settings, it is not pre-dismissed for non-existing users during auth completion, so first-time signups can see this launch modal on a later startup after onboarding.
  • The Learn More CTA uses a plaintext HTTP placeholder URL while the dogfood feature flag is enabled.

Security

  • The modal opens LEARN_MORE_URL from a CTA, and the current URL uses HTTP; use a final HTTPS URL before this flag is enabled for dogfood users.

Verdict

Found: 0 critical, 2 important, 0 suggestions

Request changes

Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).

Powered by Oz

Comment thread app/src/workspace/one_time_modal_model.rs
Comment thread app/src/workspace/view/orchestration_launch_modal/view.rs Outdated
jasonkeung and others added 9 commits May 8, 2026 12:49
…tration-launch-modal

# Conflicts:
#	crates/warp_features/src/lib.rs
- Add OrchestrationLaunchModal with hero image, badge, feature list, and CTA buttons
- Add MAGENTA design token (#BF409D) to warp_core color system
- Update PhenomenonStyle modal badge colors to magenta design tokens
- Extract reusable render_new_badge into phenomenon_badge module
- Wire orchestration_launch_banner.png hero image with Clipped to prevent bleed
- Rename 'Get Warping' button to 'Go to Warp'
- Fix badge vertical centering: 24px height, flex row with CrossAxisAlignment::Center
- Standardize badge font size (14px) and padding across all launch modals
- Apply magenta pill colors to static agent pills in run_agents confirmation card

Co-Authored-By: Oz <oz-agent@warp.dev>
- http -> https for LEARN_MORE_URL placeholder
- Import MAGENTA at top of orchestration_pill_bar.rs instead of full path
- Add explanatory comment block on did_check_to_trigger_orchestration_launch_modal setting
- Remove redundant doc comment on FeatureItem.badge field

Co-Authored-By: Oz <oz-agent@warp.dev>
Co-Authored-By: Oz <oz-agent@warp.dev>
New users signing up shouldn't see the orchestration launch modal on a
later startup. Mirror the existing suppression pattern for Oz and
OpenWarp modals.

Co-Authored-By: Oz <oz-agent@warp.dev>
Co-Authored-By: Oz <oz-agent@warp.dev>
Co-Authored-By: Oz <oz-agent@warp.dev>
jasonkeung and others added 2 commits May 8, 2026 18:35
Resolve conflict in crates/warp_core/src/ui/icons.rs by keeping both
the Atom02/Cognition icons from this branch and the Dataflow04/language
icons from master.

Co-Authored-By: Oz <oz-agent@warp.dev>
@jasonkeung jasonkeung changed the title [SAL-55] Add orchestration launch modal wiring [SAL-55] Add orchestration launch modal with placeholders May 10, 2026
@jasonkeung jasonkeung requested a review from abhishekp106 May 10, 2026 02:20
@jasonkeung
Copy link
Copy Markdown
Contributor Author

@abhishekp106 ready for review! looks like the linux integration tests are failing on many other branches:

#10432 (zach/app-4267-mermaid-failure-callout-specs) — mermaid callout specs, unrelated to remote server
#10121 (zach/bootstrap-common-skills-updater) — skills updater, unrelated
#10431 (oz-agent/spec-issue-549) — agent spec, unrelated
#10536 (moira/app-3792-pr4-daemon-index-codebase) — codebase indexing
#10528 (andy/windows-auto-update-fix-3) — Windows autoupdate, completely unrelated
#10483 (abhishek/cloud_mode_fixes) — cloud mode fixes
#10491 (matthew/broken-multi-harness) — multi harness fix
#10428 (maggs/diffstatemodel-protos) — diff state model protos

I can have warpy try to find the offender

@jasonkeung jasonkeung enabled auto-merge (squash) May 11, 2026 07:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant