Skip to content

Tracking: deliver lightweight observation views in Desktop #2100

Open
0 of 3 issues completed
Open

Description

@knqiufan

Goal

Deliver three complete lightweight observation views in Desktop: Runtime state, current-Scope Inventory & usage, and This session. Use existing public Server contracts and constrained native operations, and keep the core Memory journey independently usable.

Parent and first-wave delivery: #2099. Product decisions: #1899. Backend observability coordination: #1980.

Sub-issues and PR ownership

Each child owns its complete data integration, UI, states, and focused evidence. This tracker coordinates semantics and integration rather than creating a separate unassigned frontend workstream.

Dependencies and parallel work

Shared acceptance criteria

  • A newly provisioned personal Server works with an empty SQLite inventory and no model setup. Missing/stopped/broken local services have accurate states and navigation to feat(desktop): guide local Server setup and lifecycle management #2117; independently authorized remote operations remain usable.

  • All three pages work from the shared container and expose meaningful unconfigured, unauthorized, empty, loading, unavailable, partial-failure, and recovery states.

  • Every view identifies its data source, scope/coverage, observation time, refresh behavior, and units. Connected Server observations and local-machine diagnostics remain distinct.

  • Observation access is handled independently: denied observation permission does not disable separately authorized Memory/statistics operations when their compatibility is established.

  • Readiness is explicitly triggered with a clear explanation of model/dependency probes. Ordinary view opening/refresh or Memory use does not silently invoke readiness through a hidden native path.

  • Processing observations are not Scope completion, backlog, or ETA. Historical failure and later success are not misrepresented as proof of incident recovery.

  • Inventory is a current snapshot; missing usage remains unknown. UTC periods are correct, and recall-token estimates are not billing savings or quality scores.

  • Session measurements state whether they represent HTTP requests or user operations. Bounded collection preserves cancellation and business results and distinguishes unknown writes from definite failures.

  • Diagnostic summaries are allowlisted at the native boundary and exclude content, queries, credentials, raw endpoints, identity/Scope IDs, private paths, and raw exceptions. Preview and copying are explicit.

  • Switching connection/Scope cannot display old private observations. Public process-level and current-Scope data are labelled according to their real coverage.

  • English/Chinese, keyboard/focus, accessible labels, equivalent chart tables, small-window behavior, and scaling are covered in child PRs.

  • Integrated behavior is exercised with actual Server/native outputs and final installed packages on the declared platforms. Static sample data or mock success does not close this tracker.

Delivery priority

Windows 11 x64 and macOS Apple Silicon/Intel are required for #2099. Linux #2110 and #2111 are optional, owner-driven work under #1428; missing Linux implementation, packaging, or qualification does not block this issue's first-wave acceptance or the Windows/macOS release. Any advertised Linux support requires its own actual qualification.

Non-goals

Global Server/Agent tracing, a required external monitoring stack, persistent business audit history, per-Scope progress invented from process facts, automatic diagnostic upload, and full Dashboard layout/feature parity.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    desktopDesktop application, native platform integration, and packaging

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions