Hive Hive
Sign in

xcresult Processor 0.2.0

Metadata
Source
GitHub
Version
xcresult-processor-image@0.2.0
Published
May 12, 2026 · 14:14 UTC
Repository
tuist/tuist
Update

This release of the tuist-xcresult-processor image ships the following improvements and fixes.

What’s new

  • GitHub Enterprise Server support: you can now register the Tuist GitHub App against your own GHES instance through the integrations page, available on the Enterprise plan for hosted accounts and unconditionally on self-hosted deployments.
  • Multi-region Kura cache servers: create and manage regional cache servers in EU Central, US East, and US West directly from account settings and ops. The dashboard now shows a customer-facing Deploying badge while a server is being installed or updated.
  • Georgian language support: the dashboard and generated assets now support Georgian text rendering.
  • Rolling-window flaky-test automations: besides the existing “last N days” trigger, you can now evaluate flaky-test alerts and recovery over the latest N runs per test case.
  • Quarantine analytics split: the quarantine dashboard now surfaces muted and skipped tests as separate series with dedicated widgets, matching the Flaky Tests page design.
  • Observability: dashboard page-load requests are now tagged with request_kind, and a new Grafana Apdex dashboard tracks latency, error rate, and request rate for page loads.

Fixes and reliability

  • xcresult processing: the processor no longer retries structurally invalid xcresult bundles; it drops them and marks the run as failed after a single attempt. Attachment uploads are retried per chunk, and zero-byte attachments now upload correctly. Diagnostics are logged when extraction produces no recognizable bundle.
  • ClickHouse: transient transport errors when marking flaky runs are now retried, reducing failed processing jobs from idle-pool socket drops. Hot build, test, and event lookups are optimized to cut CPU and data read on the database.
  • Dashboard performance: the project breadcrumb dropdown resolves membership once per account, eliminating the N+1 query that caused multi-project pages to take several seconds to load.
  • Scheduling: only web pods are eligible for Oban leadership, so scheduled jobs no longer stop when an xcresult processor pod wins the election. Self-hosted deployments also receive the project-level cron schedule.
  • Slack: notifications now align with Slack marketplace requirements by using per-channel incoming webhooks. Existing bot-token destinations continue to work and migrate organically when you re-select a channel.
  • Invitations: new users who accept an invitation and confirm their email are redirected back to the pending invitation instead of the new-organization page.
  • Kura: the Kubernetes client no longer crashes when listing nodes, and the Kura settings page no longer exposes internal pod or node details.
  • AWS IRSA: S3 authentication no longer crashes in EKS deployments using IRSA.
  • CAS analytics: the Xcode cache page now loads correctly for date ranges spanning 60+ days.
  • OpenAI Apps challenge: the /.well-known/openai-apps-challenge endpoint now accepts text/plain responses for the OpenAI Apps verifier.