Skip to content

feat: migrate user menu and fix message performance#67

Merged
sirily11 merged 3 commits into
mainfrom
first-time-performance
May 29, 2026
Merged

feat: migrate user menu and fix message performance#67
sirily11 merged 3 commits into
mainfrom
first-time-performance

Conversation

@sirily11

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings May 29, 2026 08:41
@vercel

vercel Bot commented May 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
rxcode Ready Ready Preview, Comment May 29, 2026 9:52am

Request Review

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Migrates the in-app User Guide and onboarding to a more polished, slide/markdown-driven UX, simplifies memory injection by dropping the per-memory LLM "should inject" classifier in favor of vector-score retrieval thresholds, and adds extensive performance/diagnostics logging across agent spawn paths. Also prunes orphaned briefing metadata at launch and adds a macOS provisioning profile step to CI.

Changes:

  • Replace the hand-coded ManualTopic view with a markdown-bundle-driven UserManualView, and rebuild OnboardingView as a multi-slide flow with mock previews and a CLI-setup slide.
  • Refactor memory subsystem: drop determineMemoryInjectionIntent / fallbackShouldInjectMemoryIntoSystemPrompt / intent cache; switch extraction prompt to user-messages-only; add MemoryRetrievalMode with score thresholds passed into MemoryService.search; filter briefings to known projects and prune orphans from SwiftData.
  • Add timing/diagnostic logs to Claude, Codex, and ACP spawn/stream paths and to AppState stream preflight; CI now installs a macOS provisioning profile.

Reviewed changes

Copilot reviewed 38 out of 38 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
RxCode/Views/UserManualView.swift Rewrites manual as markdown-driven view with localized resource loader
RxCode/Views/Onboarding/OnboardingView.swift Multi-slide onboarding with mock previews; CLI check moved to last slide
RxCode/Views/Sidebar/BriefingView.swift Filters briefing/summary items to known projects
RxCode/Views/SettingsMemoryViews.swift Adds Retrieval-mode picker for memory
RxCode/App/AppState.swift Adds MemoryRetrievalMode, removes intent cache
RxCode/App/AppState+Agents.swift Drops system-prompt memory injection classifier; uses related-hit context only
RxCode/App/AppState+Lifecycle.swift Prunes orphan briefing metadata on launch; removes auto-completion of onboarding
RxCode/App/AppState+CrossProject.swift Threads memory mode/threshold into search; adds extensive preflight logs
RxCode/App/AppState+SessionLifecycle.swift Switches memory ops API to userMessages
RxCode/App/AppState+MemoryIntent.swift Deleted (intent fallback heuristics removed)
RxCode/Services/ThreadStore.swift Adds deleteBriefingMetadata(excludingProjectIds:)
RxCode/Services/OpenAISummarizationService.swift Rewrites memory extraction prompt around user messages; removes injection-intent prompt
RxCode/Services/MemoryService.swift Adds minScore filter and timing logs to search
RxCode/Services/FoundationModelSummarizationService.swift Drops injection-intent; switches to userMessages
RxCode/Services/ClaudeService+Summaries.swift Same API change
RxCode/Services/ClaudeService+Process.swift Spawn/prompt timing logs
RxCode/Services/CodexAppServer+Summaries.swift Same API change
RxCode/Services/CodexAppServer+Turn.swift First-stdout-line timing log
RxCode/Services/CodexAppServer+Process.swift Spawn timing logs
RxCode/Services/ACPService.swift Adds stdoutLineCount to session state
RxCode/Services/ACPService+Spawn.swift Reformats spawn logs with elapsed timing
RxCode/Services/ACPService+Protocol.swift First-stdout-line log
RxCode/Resources/user_manual_*.md New EN/zh-CN bundled manual pages
RxCode/Resources/Localizable.xcstrings New string entries / marks one stale
RxCodeTests/MemoryIntentTests.swift Rewrites tests around new memory extraction prompt and parsing
RxCode.xcodeproj/project.pbxproj Adds empty UserMenus group
.github/workflows/build.yaml Installs macOS provisioning profile for signing

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +200 to +207
let prunedBriefingMetadata = threadStore.deleteBriefingMetadata(
excludingProjectIds: Set(projects.map(\.id))
)
if prunedBriefingMetadata.threadSummaries > 0 || prunedBriefingMetadata.branchBriefings > 0 {
threadSummaryRevision &+= 1
branchBriefingRevision &+= 1
logger.info("Pruned orphan briefing metadata summaries=\(prunedBriefingMetadata.threadSummaries) briefings=\(prunedBriefingMetadata.branchBriefings)")
}
Comment on lines +273 to +275
let messages = userMessages.enumerated().map { idx, message in
"### User message \(idx + 1)\n\(message)"
}.joined(separator: "\n\n")
Comment on lines 217 to 219

persistedQueues = threadStore.loadAllQueues()

OnboardingView.swift exceeded the 800-line lint limit. Extract each
slide preview (CLI, ACP, summarization, mobile pairing, MCP) and the
shared mock components into their own files alongside the main view.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@sirily11 sirily11 merged commit 0c95e0e into main May 29, 2026
11 checks passed
@sirily11 sirily11 deleted the first-time-performance branch May 29, 2026 10:06
@sirily11

Copy link
Copy Markdown
Contributor Author

🎉 This PR is included in version 1.13.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request released

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants