Skip to content

feat(desktop): add Runtime state observations - #2474

Merged
hidb4ai merged 1 commit into
masterfrom
codex/desktop-runtime-2105
Nov 5, 2026
Merged

hidb4ai merged 1 commit into
masterfrom
codex/desktop-runtime-2105

Conversation

@knqiufan

@knqiufan knqiufan commented Nov 4, 2026

Copy link
Copy Markdown
Collaborator

Which issue or RFC does this PR close?

Refs #2105 (03-A / 03-B), #2100, and RFC #1455. Keep #2105 open for installed Windows/macOS acceptance and coordination with #2361.

Rationale for this change

The Runtime state tab had no view of the selected Server or the local service. A liveness response, a processing outcome, and an OS service state answer different questions; users need to see each independently.

What changes are included in this PR?

  • Add independent liveness and capability snapshots with UTC timestamps, process/worker coverage, and historical extraction outcomes. Native IPC returns only the capability fields used by the page. A missing or denied capability snapshot does not hide liveness or change Memory authorization.
  • Add a separate readiness action for a qualified connection with current observation access. Normal Runtime refresh never probes models. Reads are bounded and cancelled on context changes; stale responses cannot be shown in a different context.
  • Reuse read-only Ops inspection and the registered local CLI adapter, with a focused link to Local Server settings for mutations. Show reported ownership, registration, manager, resource and maintenance facts without inferring service state from HTTP. Both locales and keyboard navigation use the existing Observation shell.

Are there any user-facing changes?

Observation → Runtime state is now usable. There are no changes to HTTP contracts, profile storage or the Server qualification catalog. This PR stands on master after #2220; #2361 still owns separating readiness from Connections and anonymous business revalidation. After integration, share its final identity/readiness boundary and qualify the combined product client. Signed package, installed accessibility/scaling, and platform service acceptance remain separate.

How was this change tested?

  • Frontend: pnpm typecheck, pnpm test (187 passed), pnpm lint, pnpm build. Mocked IPC covers independent loading, denial, keyboard cancellation, and stale Server/local results.
  • macOS arm64 Rust 1.95.0: cargo test --locked (135 passed, three opt-in tests); Clippy all targets with warnings denied, format and IPC export drift checks passed. Two opt-in tests were also run explicitly against a registered real CLI and a real read-only Ops subprocess. The independently bundled helper test still requires an external bundle.
  • desktop/tests/real_server.py --product-qualification sqlite-stats-63e9665c-v1: all four built-wheel SQLite modes passed through the ordinary native manager (anonymous loopback, Bearer, HTTPS with custom CA and base path, and enforced Access provider). The recorded wheel matched its qualification SHA-256. This is real Server/API and native protocol evidence, not installed-package acceptance.

AI usage statement

OpenAI Codex (GPT-6) assisted with implementation, Open Code Review delegation, regression tests, real-Server execution, and documentation.

@PsiACE PsiACE left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM, thanks!

@hidb4ai hidb4ai left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@hidb4ai
hidb4ai merged commit 7223488 into master Nov 5, 2026
42 checks passed
@hidb4ai hidb4ai added the 1.5.1 v1.5.1 release tracking label Nov 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.5.1 v1.5.1 release tracking

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants