Skip to content

migrate desktop runtime to OMP#11

Draft
novvoo wants to merge 4 commits into
mainfrom
codex/omp-desktop-adaptation
Draft

migrate desktop runtime to OMP#11
novvoo wants to merge 4 commits into
mainfrom
codex/omp-desktop-adaptation

Conversation

@novvoo

@novvoo novvoo commented Jul 13, 2026

Copy link
Copy Markdown
Owner

What changed

  • replaced the duplicated in-repo agent runtime with @oh-my-pi/pi-coding-agent
  • added the OMP desktop adapter, IPC/session normalization, and focused unit coverage
  • removed superseded CLI, core, tool, scheduler, memory, model, and legacy test implementations
  • adapted the Electron renderer, task navigation, runtime activity, inspector, composer, terminal, and interaction states
  • updated CI to install from the synchronized Bun lockfile, lint, build the renderer, verify package contents, and run OMP/Desktop tests across supported operating systems

Why

The desktop application had switched execution cores, but still carried the previous runtime and UI assumptions. This made initialization fragile, duplicated behavior, left runtime events mismatched, and caused the old CI workflow to target deleted test paths.

Impact

The desktop app now uses OMP as the single execution core while preserving the existing Electron IPC boundary. The renderer presents normalized sessions, streaming output, tool lifecycle events, file changes, user interactions, and responsive workbench states through one coherent UI.

Validation

  • bun install --frozen-lockfile
  • bun run lint
  • bun run test:unit — 380 passed
  • bun run test:desktop — 21 passed, repeated twice
  • bun run desktop:renderer:build
  • npm pack --dry-run
  • git diff --check

@ecc-tools

ecc-tools Bot commented Jul 13, 2026

Copy link
Copy Markdown

Analyzing 200 commits...

@ecc-tools

ecc-tools Bot commented Jul 13, 2026

Copy link
Copy Markdown

Analysis Complete

Generated ECC bundle from 1 commits | Confidence: 75%

View Pull Request #12

Repository Profile
Attribute Value
Language JavaScript
Framework React
Commit Convention freeform
Test Directory mixed
Changed Files (300)
Metric Value
Files changed 300
Additions 11355
Deletions 15066

Top hotspots

Path Status +/-
package-lock.json modified +7359 / -2182
src/cli/agent-app-slash-commands.js removed +0 / -1576
src/cli/enhanced-ui.js removed +0 / -1131
src/adapters/desktop/desktop-core.js modified +125 / -806
src/adapters/desktop/omp-adapter.js added +893 / -0

Top directories

Directory Files Total changes
. 6 10265
src/cli 17 5806
src/cli/commands 6 1952
src/adapters/desktop 2 1824
src/core 14 1444
Analysis Depth Readiness (evidence-backed, 64%)

ECC Tools uses this to decide whether recommendations should stay at commit-history/setup guidance or expand into CI, security, harness, reference-set, AI-routing, and team backlog work.

Area Status Evidence / Next Step
Commit history Partial 1 commits sampled
CI/CD signals Ready .github/workflows/ci.yml
Security evidence Ready src/core/runtime/agent/support/security-policy.js
Harness configuration Missing Add Claude, Codex, OpenCode, Zed, dmux, MCP, plugin, or cross-harness config evidence for harness-agnostic recommendations.
Reference/eval evidence Ready src/eval/agent-eval.js
AI routing and cost controls Ready desktop/main-app/llm-config-and-persistence.js, src/core/prompts/coding-prompts.js, src/core/prompts/text-tool-parser-hints.js
Team handoff and project tracking Missing Add roadmap, runbook, project, Linear, or follow-up tracking docs so generated work can land in a team queue.
Reference Set Readiness (1/7, 14%)
Area Status Evidence / Next Step
Deep analyzer corpus Missing Add analyzer fixture, golden, benchmark, or reference-set files that can catch analyzer regressions.
RAG/evaluator comparison Missing Add retrieval or evaluator reference-set comparison fixtures with expected ranking behavior.
PR salvage/review corpus Missing Add stale-PR, review-thread, reopen-flow, or salvage reference cases for queue cleanup automation.
Discussion triage corpus Missing Add public discussion triage fixtures, golden cases, or reference sets for informational, answered, and no-response classifications.
Harness compatibility Missing Add cross-harness, adapter-compliance, or harness-audit evidence for Claude, Codex, OpenCode, Zed, dmux, and agent surfaces.
Security evidence Present src/core/runtime/agent/support/security-policy.js
CI failure-mode evidence Missing Add captured CI failure logs, dry-run fixtures, or troubleshooting docs for common workflow failure modes.
Likely Future Issues (7)
Severity Signal Why it may show up
MEDIUM Runtime config changes may ship without example or template updates 2 runtime config paths changed; 0 example or template config files changed
HIGH Auth or permission changes may ship without security regression coverage 10 auth/permission paths changed; 0 auth-focused integration or e2e tests changed
HIGH Async job or webhook changes may ship without reliability coverage 9 async surface paths changed; 0 async-focused integration or e2e tests changed
MEDIUM User-facing UI changes may ship without browser coverage 20 user-facing UI paths changed; 0 browser or e2e coverage files changed
MEDIUM CLI changes may ship without shell or end-to-end coverage 25 CLI surface paths changed; 0 CLI-focused integration or e2e tests changed
MEDIUM Cost or token-risk changes may ship without budget evidence 10 cost/token-risk paths changed; 0 budget, usage, or cost validation artifacts changed
MEDIUM CI workflow changes may ship without failure-mode evidence 1 CI/test-runner paths changed; 0 CI failure-mode evidence artifacts changed
  • Runtime config changes may ship without example or template updates: The PR changes runtime config or deployment settings but does not update any obvious example env file or config template.
  • Auth or permission changes may ship without security regression coverage: The PR changes auth, session, middleware, or permission-sensitive files without touching any obvious auth-focused integration or end-to-end tests.
  • Async job or webhook changes may ship without reliability coverage: The PR changes queue, worker, cron, or webhook-sensitive files without touching any obvious async-focused integration or end-to-end tests.
  • User-facing UI changes may ship without browser coverage: The PR changes components, pages, or other user-facing UI files without touching any obvious browser or end-to-end coverage.
  • CLI changes may ship without shell or end-to-end coverage: The PR changes CLI, bin, or command-entry files without touching any obvious CLI-focused integration or end-to-end tests.
  • Cost or token-risk changes may ship without budget evidence: The PR changes AI routing, usage, token budget, or model-call surfaces without touching obvious budget, usage-limit, or cost regression evidence.
  • CI workflow changes may ship without failure-mode evidence: The PR changes CI workflows or test-runner entrypoints without touching CI failure fixtures, captured logs, troubleshooting notes, or regression evidence.
Suggested Follow-up Work (7)
Type Suggested title Targets
PR chore: sync config templates for src/core/config/app-config.js + src/core/config/index.js src/core/config/app-config.js, src/core/config/index.js
PR test: add auth coverage for desktop/renderer/app/session/session-storage.js + src/core/harness/hashline/policy.js desktop/renderer/app/session/session-storage.js, src/core/harness/hashline/policy.js
PR test: add async coverage for src/scheduler/SchedulerEngine.js + src/scheduler/concurrency/ConcurrencyCoordinator.js src/scheduler/SchedulerEngine.js, src/scheduler/concurrency/ConcurrencyCoordinator.js
PR test: add browser coverage for desktop/renderer/components/AgentControl.jsx + desktop/renderer/components/AskUserFloatingCapsule.jsx desktop/renderer/components/AgentControl.jsx, desktop/renderer/components/AskUserFloatingCapsule.jsx
PR test: add CLI coverage for src/adapters/cli/index.js + src/adapters/cli/ui-adapter.js src/adapters/cli/index.js, src/adapters/cli/ui-adapter.js
PR test: add budget evidence for desktop/main-app/llm-config-and-persistence.js + src/core/prompts/coding-prompts.js desktop/main-app/llm-config-and-persistence.js, src/core/prompts/coding-prompts.js
PR ci: add failure-mode evidence for .github/workflows/ci.yml .github/workflows/ci.yml
  • chore: sync config templates for src/core/config/app-config.js + src/core/config/index.js: Backfill example env files or config templates before a fresh setup drifts from the shipped runtime surface.
  • test: add auth coverage for desktop/renderer/app/session/session-storage.js + src/core/harness/hashline/policy.js: Backfill auth or permission regression coverage before another access-control change lands on the touched surface.
  • test: add async coverage for src/scheduler/SchedulerEngine.js + src/scheduler/concurrency/ConcurrencyCoordinator.js: Backfill async reliability coverage before another queue, worker, or webhook change lands on the touched surface.
  • test: add browser coverage for desktop/renderer/components/AgentControl.jsx + desktop/renderer/components/AskUserFloatingCapsule.jsx: Backfill browser coverage before another user-facing UI change lands on the touched surface.
  • test: add CLI coverage for src/adapters/cli/index.js + src/adapters/cli/ui-adapter.js: Backfill CLI coverage before another command-surface change lands on the touched paths.
  • test: add budget evidence for desktop/main-app/llm-config-and-persistence.js + src/core/prompts/coding-prompts.js: Backfill cost, token, or usage-limit validation before another model-routing change lands on the touched surface.
  • ci: add failure-mode evidence for .github/workflows/ci.yml: Backfill CI failure-mode evidence before another workflow or test-runner change lands on the touched surface.

Copy-ready bodies

chore: sync config templates for src/core/config/app-config.js + src/core/config/index.js

## Summary
- Update the example env files, sample configs, or deployment templates that should mirror the changed runtime configuration surface.

## Why
- Backfill example env files or config templates before a fresh setup drifts from the shipped runtime surface.

## Touched paths
- `src/core/config/app-config.js`
- `src/core/config/index.js`

## Validation
- Update the repo example env file or config template that should reflect the new runtime settings.
- Run the setup, boot, or deployment validation flow that depends on the changed config surface.

test: add auth coverage for desktop/renderer/app/session/session-storage.js + src/core/harness/hashline/policy.js

## Summary
- Add auth, session, or permission regression coverage for the recently changed security-sensitive surface.

## Why
- Backfill auth or permission regression coverage before another access-control change lands on the touched surface.

## Touched paths
- `desktop/renderer/app/session/session-storage.js`
- `src/core/harness/hashline/policy.js`

## Validation
- Add or extend integration / e2e coverage for the changed auth, session, middleware, or permission surface.
- Exercise allowed and denied flows, invalid or expired credentials, or equivalent access-control boundary cases.

test: add async coverage for src/scheduler/SchedulerEngine.js + src/scheduler/concurrency/ConcurrencyCoordinator.js

## Summary
- Add async reliability coverage for the recently changed queue, worker, cron, or webhook surface.

## Why
- Backfill async reliability coverage before another queue, worker, or webhook change lands on the touched surface.

## Touched paths
- `src/scheduler/SchedulerEngine.js`
- `src/scheduler/concurrency/ConcurrencyCoordinator.js`

## Validation
- Add or extend integration / e2e coverage for the changed queue, worker, cron, or webhook behavior.
- Exercise retries, idempotency, failure handling, or equivalent async boundary cases.

test: add browser coverage for desktop/renderer/components/AgentControl.jsx + desktop/renderer/components/AskUserFloatingCapsule.jsx

## Summary
- Add browser or end-to-end coverage for the recently changed user-facing surface.

## Why
- Backfill browser coverage before another user-facing UI change lands on the touched surface.

## Touched paths
- `desktop/renderer/components/AgentControl.jsx`
- `desktop/renderer/components/AskUserFloatingCapsule.jsx`

## Validation
- Add or extend browser / e2e coverage for the changed component, page, or flow.
- Exercise the visible user journey that depends on the touched UI surface.

test: add CLI coverage for src/adapters/cli/index.js + src/adapters/cli/ui-adapter.js

## Summary
- Add shell, CLI, or end-to-end coverage for the recently changed command surface.

## Why
- Backfill CLI coverage before another command-surface change lands on the touched paths.

## Touched paths
- `src/adapters/cli/index.js`
- `src/adapters/cli/ui-adapter.js`

## Validation
- Add or extend shell, CLI, or end-to-end coverage for the changed command surface.
- Exercise the user-facing command invocation and expected exit/output behavior.

test: add budget evidence for desktop/main-app/llm-config-and-persistence.js + src/core/prompts/coding-prompts.js

## Summary
- Add budget or usage-limit validation for the recently changed AI routing or model-call surface.

## Why
- Backfill cost, token, or usage-limit validation before another model-routing change lands on the touched surface.

## Touched paths
- `desktop/main-app/llm-config-and-persistence.js`
- `src/core/prompts/coding-prompts.js`

## Validation
- Add or extend budget, token, usage-limit, or model-routing regression coverage for the changed path.
- Verify the route still enforces plan limits, retry caps, fallback behavior, or explicit cost controls.

ci: add failure-mode evidence for .github/workflows/ci.yml

## Summary
- Add CI failure-mode evidence for the recently changed workflow or test-runner surface.

## Why
- Backfill CI failure-mode evidence before another workflow or test-runner change lands on the touched surface.

## Touched paths
- `.github/workflows/ci.yml`

## Validation
- Add or update a CI failure fixture, captured failing log, troubleshooting note, workflow dry-run evidence, or regression test for the changed CI/test-runner behavior.
- Run the affected workflow or test-runner entrypoint locally or in CI and record pass/fail evidence.
Generated Instincts (14)
Domain Count
git 2
code-style 10
testing 2

After merging, import with:

/instinct-import .claude/homunculus/instincts/inherited/mastery-instincts.yaml

Files

  • .claude/ecc-tools.json
  • .claude/skills/mastery/SKILL.md
  • .agents/skills/mastery/SKILL.md
  • .agents/skills/mastery/agents/openai.yaml
  • .claude/identity.json
  • .codex/config.toml
  • .codex/AGENTS.md
  • .codex/agents/explorer.toml
  • .codex/agents/reviewer.toml
  • .codex/agents/docs-researcher.toml
  • .claude/homunculus/instincts/inherited/mastery-instincts.yaml

ECC Tools | Everything Claude Code

novvoo added 3 commits July 13, 2026 14:26
MessageLog:
- Tighten all spacing: margins, padding, gaps across message items,
  bubbles, tool cards, thinking panels, detail panels, runtime details
- Unify font sizes to 10/11/13px three-tier system
- Reduce header visual weight, soften type labels
- Fix markdown rendering: p line-height 1.05→1.45, shrink code blocks
- Compact inline JSX styles for events, payloads, error pres

BottomTerminalPanel:
- Full rewrite with DS token alignment (var(--ds-*))
- Add ANSI color code parsing for terminal output
- Replace plain-text buttons (C, _, x) with inline SVG icons
- Redesign tab bar with segmented control style
- Add completion popup, command-line highlight, brand caret
- Compact header (42px→34px), tighter input row
- Add empty state for Problems tab
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.

1 participant