Skip to content

fix(diagnostics): unify panel/export trust and session-scoped reads#7

Draft
KitsuneKode wants to merge 9 commits into
mainfrom
cursor/diagnostics-trust-and-usability-ad11
Draft

fix(diagnostics): unify panel/export trust and session-scoped reads#7
KitsuneKode wants to merge 9 commits into
mainfrom
cursor/diagnostics-trust-and-usability-ad11

Conversation

@KitsuneKode

@KitsuneKode KitsuneKode commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Problem

After the diagnostics/observability push, troubleshooting felt flaky:

  1. Dual /diagnostics UIs — palette opened the scrollable overlay; workflow/title-control used a list-picker where every line was a selectable row.
  2. Export ≠ panel — support bundles omitted downloads/release/presence/memory/provider-health inputs the panel uses, so triage verdicts disagreed.
  3. Stale durable reads — any prior-session SQLite rows masked the live in-memory ring.
  4. Weak correlation — developer evidence latched onto the first event with any ID (often a bare sessionId from memory samples).
  5. Thin issue drafts — GitHub bodies lacked triage/correlation.

Fix

  • Route workflow diagnostics through openRootOwnedOverlay (same as palette)
  • Share buildSupportBundleInputFromContainer so export/report match panel insight
  • Merge session-scoped durable + memory events; fall back to memory when the durable sink failed
  • Prefer playback-cycle / attempt / trace IDs for active correlation; scan attempt timelines for timeouts
  • Enrich issue report drafts with triage + insight names
  • Fix durable restart unit test (hardcoded June timestamp was pruned by 14-day retention)

CI note

Rebased onto #8. Earlier red X’s were the shared checkout/composite-action infra break, not diagnostics logic.

Tests

  • diagnostics-trust.test.ts (new)
  • diagnostics-service.test.ts / diagnostics-insight.test.ts
Open in Web Open in Cursor 

cursoragent and others added 3 commits July 9, 2026 20:23
…assets

GitHub resolves local composite actions from the workspace before any step
runs, so nesting checkout inside setup-bun-monorepo made every CI/release/
build-binaries job fail instantly since that action landed. Callers now
checkout first; the composite only sets up Bun/caches/install.

Also: native smoke matrix for host binaries, fail_on_unmatched_files +
asset-count assert on release upload, clearer empty-release installer
errors, and fix install.ps1 returning early after mpv so yt-dlp is offered.

Co-authored-by: Manash Pratim Bhuyan <bhuyanmanash2002@gmail.com>
v0.2.6.json has an empty sections array (changelog body has no ###
headings). The docs test required sections and failed once CI actually
ran again after the checkout fix.

Co-authored-by: Manash Pratim Bhuyan <bhuyanmanash2002@gmail.com>
These failures only surfaced once CI started executing the full suite again
(#8). Fix the durable diagnostics retention time bomb, make install.ps1
dry-run succeed without LOCALAPPDATA/network, stop mock.module leaking from
palette tests into history/overlay tests, and gate live Miruro network checks.
@cursor
cursor Bot force-pushed the cursor/diagnostics-trust-and-usability-ad11 branch from ffcd579 to 133f33d Compare July 9, 2026 21:08
Typecheck failed because openSetupWizardFromShell was mocked as Promise<void>
instead of Promise<SetupWizardResult>, which also broke Format (turbo depends
on typecheck for fmt:check).
…rship

Make the deprecated preferred-source unit test mock network instead of live
fetch, and harden Videasy so deprecated preferred ids never bias cycle order
or probe Sanji/1movies. Document that resolveEscTransition stays unused at
runtime because root-overlay-shell + resolveOverlayBackStack already own Esc.
Replace mock.module in watch-genre-stats with a restored spy so later
tmdb-proxy/title-detail/recommendation tests see the real module, and use
relative timestamps in stats-service so windowed averages stay valid.
@cursor
cursor Bot force-pushed the cursor/diagnostics-trust-and-usability-ad11 branch from 133f33d to 5df206f Compare July 9, 2026 21:15
Root causes of flaky/hard-to-debug diagnostics after the observability push:
dual /diagnostics UIs (list-picker vs overlay), export insight missing panel
inputs, durable global recent masking live memory, and correlation latching
onto bare session IDs.

- Route workflow diagnostics through the same root overlay as the palette
- Share panel inputs into support-bundle export/report
- Merge session-scoped durable + memory reads; fall back when sink failed
- Prefer playback-cycle correlation; implement timeout attempt scanning
- Enrich GitHub issue drafts with triage/correlation; fix stale durable test date
@cursor
cursor Bot force-pushed the cursor/diagnostics-trust-and-usability-ad11 branch from 5df206f to 389335b Compare July 9, 2026 21:18
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.

2 participants