Skip to content

[WRONG BRANCH] release: 2.78.0 - #6632

Merged
lidge-jun merged 197 commits into
mainfrom
codex/promote-main-2.78.0
Oct 5, 2026
Merged

lidge-jun merged 197 commits into
mainfrom
codex/promote-main-2.78.0

Conversation

@lidge-jun

Copy link
Copy Markdown
Owner

Summary

Promote the verified dev candidate 0511f458f12674f63bf3b629a0523cee246d33a0 to main as stable 2.78.0. The candidate already carries version 2.78.0 in all four version sources, so the branch is the candidate plus an ours merge of origin/main; its tree equals 0511f458f1 exactly. The same tree shipped as 2.78.0-preview.20261005.

2.78.0 contents since v2.77.0 (61 first-parent landings: 14 feat, 37 fix, 6 test, 3 docs, 1 chore): CLI management parity (#6526, #6528, #6535, #6539, #6542, #6545) and CLI UX fixes (#6585, #6607, #6608, #6609, #6611, #6614, #6615, #6619, #6622); native Claude Messages through the Anthropic pool and the native-request preference (#6552, #6559, #6562); catalog ownership/healing (#6553, #6558, #6560, #6563); paid credits after included quota (#6572); Anthropic DNS refresh-intent recovery (#6586); Unix autostart shim private overlay (#6589, guidance #6607/#6619); standalone update restart and Bun readiness (#6556, #6569); Claude Desktop picker over HTTP/2 (#6610) and argument-echo fixes (#6608, #6618); management/inference port separation (#6601), session alias normalization (#6554, #6588); DSH Desktop profile patch and dashboard remedy (#6522, #6597); Ollama replay (#6576), combo errors (#6564), Droid defaults (#6577), Devin (#6557, #6565), reset retry (#6555); GUI: sidebar regroup, theme switch, one-page Claude settings, audit fixes (#6579, #6593, #6596, #6612, #6623, #6625); docs (#6613, #6619). Full record: devlog/_plan/261005_release_readiness/040_release_readiness.md in the coordinator worktree.

Release authorization: the repository owner asked on 2026-10-05 to release stable 2.78.0 after the preview. Preview 2.78.0-preview.20261005 was published from the same tree (preview SHA 04e175f; push CI 37290888855, Service lifecycle 37290889969, release run 37294840779).

Upgrade notes: Unix users with an existing Codex autostart shim run ocx codex-shim install and source the printed codex-shell-env.sh; consented accounts can now spend credits after the included limit; DSH writes target profiles/desktop/cordis.patch.yml (create it with [] if missing); picker users should look for picker session h2 and can fall back with ocx claude desktop picker off.

GUI changes carried from dev (screenshots from the source PRs):

Connect overview
Claude Code settings on one page
Claude Desktop Models card
DSH missing profile patch

Verification

  • Candidate 0511f458f1: workflow_dispatch Cross-platform CI run 37276383405 success on attempt 2 (attempt 1 failed only windows 7/9 with a known spawn-timeout flake in an untouched test; failed-jobs rerun passed), and Service lifecycle workflow_dispatch run 37279425603 success.
  • Dev pre-move to 2.79.0 via dev-version-bump.yml (run 37300918128, PR chore(release): open dev at 2.79.0 before releasing 2.78.0 #6631) lands before this promotion so dev outranks 2.78.0.
  • git diff 0511f458f1 HEAD is empty; the merge commit's tree equals the candidate's.
  • Push-event Cross-platform CI and Service lifecycle on the merged SHA gate release.yml.
  • No local tests were run for this promotion, per the owner's instruction; every included change carries hosted CI evidence at its own head.

Checklist

  • Targets main (maintainer release promotion)
  • Version sources already at 2.78.0 (bun scripts/release-version-sources.ts sync 2.78.0 reports no change)
  • Candidate full-matrix CI and Service lifecycle green
  • No secrets or private data

…i-parity-foundation

# Conflicts:
#	scripts/test-layout/layout.json
#	tests/fixtures/test-layout-expected.json
lcxhh521 and others added 19 commits October 5, 2026 14:21
…6597)

* fix(integrations): write DSH routes to the Desktop profile patch it reads

DSH 0.1.7+ imports $DSH_HOME/settings.yaml once into the first profile
that boots and renames it to settings.yaml.imported. From then on it reads
provider routes from the llm-pi-ai row of a profile patch (a top-level
YAML list of loader rows) and hot reloads that file. The integration kept
writing settings.yaml, so after that first import a catalog refresh, a
model change or a disable reached nobody, and status read the renamed file
as absent.

Declare the Desktop profile's cordis.patch.yml as DSH's currentStore (the
seam from #5348), addressed through a leading [id=llm-pi-ai] selector.
The home patch is not an alternative: a home row replaces the profile
row's whole config, the user's own routes with it.

- merge.ts keeps a sequence root, and prunes an element it seeded once
  only its selector fields remain.
- The source-preserving YAML patcher edits one top-level list entry as the
  block map it holds and restores its "- " and two-space indent byte for
  byte. DSH's empty `[]` is the only flow form adopted, and a disable that
  empties the list writes it back.
- IntegrationTarget carries its own sourcePreservingYaml, so the legacy
  file and the store are patched along their own paths, and a coordinated
  write also holds DSH's config-editor lock (the profile's
  package.json.lock) whenever the profile directory exists.
- Without a Desktop profile the legacy settings.yaml stays the target.
- The dashboard accepts the new plan path; GUI text, docs and the
  integrations structure doc describe the new location.

* test(gui): pin the DSH ownership copy to the Desktop profile path

The locale-parity fixture still held the settings.yaml sentence in every
locale, and the DSH surface test asserted the old llm-pi-ai.providers
spelling. Both now follow the copy: the llm-pi-ai row, the Desktop
profile patch, and the settings.yaml fallback.

* fix(integrations): keep DSH profile refresh order and lock late profiles

Refreshing a Desktop profile row that OpenCodex created no longer deletes and
re-appends it in the expected merge, so a row DSH appended afterwards no longer
turns a routine catalog refresh into an "unsafe" refusal. The created-row
provenance is kept so disable still removes it.

The profile manifest lock is now chosen after the settings lock is held and
re-checked after every revalidation await, so a profile that appears mid-write
is locked and revalidated before it is read or written. Removing the last
managed row also keeps the file's original final-newline and CRLF convention.

* fix(integrations): refuse restoring into a missing DSH profile directory

A confirmed restore of a journaled Desktop profile write used to recreate a
removed profiles/desktop directory and write it without the profile's
package.json.lock. Preview and restore now refuse as unsafe when the declared
locked store's directory is missing, and the structure doc records the lock
re-probe, row-order, and restore contracts.

* docs(structure): fit the DSH store paragraph inside the integrations budget

Merging #6577 put structure/clients/integrations.md four lines over its
600-line budget. Tighten the DSH paragraph without dropping any contract.

* fix(integrations): report a booted DSH profile without a patch instead of writing settings.yaml

With profiles/desktop/package.json present and cordis.patch.yml missing,
the target fell back to $DSH_HOME/settings.yaml with no ineffective
marker. DSH imported that file when it booted the profile and never
reads it again, so the write was lost without a word. A store
declaration can now name a missing store the client still reads; DSH's
does, and the write is refused as an ineffective one with the remedy
(create the patch as `[]`).

* docs(integrations): state why a DSH profile without a patch is refused

The comments, structure doc, and refusal message said DSH imports
settings.yaml once and never reads it again. Upstream DSH's
importLegacyDocument renames settings.yaml to settings.yaml.imported and
imports it on every startup where it exists. The refusal stays: a block
written there would be moved out from under opencodex's ownership record.
Only wording changes; behavior and tests' assertions are unchanged.

* feat(integrations): show the missing-store remedy in the dashboard

A DSH Desktop profile whose cordis.patch.yml is missing is refused as
superseded_store, and the CLI names the fix: create the patch containing
`[]`. The dashboard only had the generic superseded-store copy, which says
the client reads a file opencodex does not write and offers no way out.

- The missingStore declaration publishes its empty document (`[]` for DSH)
  beside the remedy text, and IneffectiveWrite carries it.
- Status rows carry supersededReason beside supersededBy, plus
  missingStoreDocument for a missing store.
- A superseded_store plan carries the same two fields. The plan still names
  no file (the path stays on the status row), and the fingerprint does not
  change: the bound ineffective-write token already covers this finding.
- The GUI accepts the fields only on a superseded_store refusal, the
  document only for missing-store and only as one short line, and renders
  copy that names the file and the document in all eleven locales.

* fix(integrations): name the missing store in the dialog and decode it in the CLI

- The apply dialog covers the page's status notice, so a refused DSH
  preview now names the patch path as well as `[]`. The path comes from
  the status row; the plan still names no file. Bulk dialogs, which have
  no single status row, keep the pathless copy.
- The Turkish copy names the legacy settings file explicitly instead of
  "that file".
- The CLI plan decoder from #6542 accepts supersededReason and
  missingStoreDocument under the same contract as the GUI, and
  `ocx integration client preview` prints the remedy. Both decoders now
  reject a non-string reason and a document that is not one short
  printable-ASCII line, since the CLI echoes it to a terminal.

* fix(gui): wrap long missing-store paths in the DSH notice and plan dialog

---------

Co-authored-by: JUN <jun@lidgeai.com>
…-list next steps (#6611)

* fix(cli): show account health actions, paid-credit consent, and empty-list next steps

* fix(cli): never echo an id that fails the selector allowlist in account recovery lines
… in leaf help (#6609)

* fix(cli): correct help and CLI reference text and show declared flags in leaf help

* test(cli): follow the corrected restart help summary
…ss (#6601)

* fix(management): keep inference ports independent of management ingress

* fix(management): keep Cursor gateway on the bound inference port; cover ingress export

Cursor status now prefers the lifecycle-bound public port, then the PID-matched runtime record, then config, so a management-only ingress port can never become the advertised gateway. Adds a real-server regression that exports a client config through hub management ingress and asserts the public bound port, plus Cursor precedence cases, and records resolver ownership and known limitations in ADR-6598.

* fix(management): use the live bound port for Desktop provider-change auto-apply

autoApplyDesktopBestEffort wrote the Desktop 3P config from config.port, so a CLI override or ephemeral bind could leave Desktop pointing at a port nothing serves. It now uses managementInferencePort like the other management writers; the roster-update fixture asserts the live port reaches the writer.

---------

Co-authored-by: Ingwannu <ingwannu@users.noreply.github.com>
Co-authored-by: JUN <jun@lidgeai.com>
* fix(responses): normalize native upstream session aliases

* test(responses): expect normalized session_id for caller aliases; state alias precedence

Canonical ChatGPT egress now fills session_id from session-id/thread-id, so the Claude affinity and Chat affinity wire expectations follow it. Adds a two-alias precedence case and documents exact precedence, the bridges' empty-value filtering, and that aliases are forwarded raw like an explicit session_id.

* fix(responses): treat empty session headers as absent when normalizing aliases

Upstream auth header selection already drops empty values, so the alias helper now does the same. First attempts and retries rebuilt from raw caller headers pick the same upstream session_id. Docs state the precedence for non-empty headers.

* test(responses): cover caller session identity across auth replay

---------

Co-authored-by: JUN <jun@lidgeai.com>
… #debug after the GUI regroup (#6612)

* fix(gui): keep short sidebars, Claude sidecar rows and Save errors usable; open legacy #debug on Debug

Audit follow-up for the GUI merged since v2.77.0 (#6579, #6593, #6596):

- A short or zoomed desktop window no longer collapses the sidebar menu to its padding: the menu keeps about three rows and the whole rail scrolls only when it cannot fit, with the language menu kept on screen.
- The Claude web search and vision sidecar rows wrap their controls under the copy instead of covering the title (French at 768px) or clipping the model input (390px).
- A failed Save on the one-page Claude settings reports in the Save bar, where it was clicked; the bar status wraps instead of sliding under Revert.
- Cold-loading a legacy #debug bookmark selects the Debug tab, reading the canonical hash like Connect and Providers do.

Findings and plan: devlog/_plan/261005_r4_gui_audit/.

* fix(gui): keep the short-window language menu on screen in every engine

Review on #6612: the rail backdrop-filter makes the sidebar the containing block of the fixed language menu, so an engine that treats it like an absolute child would scroll and clip it with the rail. In windows 480px tall or less the rail is now opaque, as in the existing no-backdrop-filter fallback, which anchors the menu to the window; the menu is opaque too.
… the dashboard (#6613)

* docs: sync Connect, Claude settings and DSH profile-patch guides with the dashboard

The integration guides still sent readers to an Integrations tab that is called Connect since #6593, the DSH sections named the legacy settings.yaml mapping as the only owned path after #6522 moved it to the Desktop profile patch, and the Claude GUI sections listed the pre-#6596 order without the Save bar contract. English and the seven translations now match the shipped dashboard.

* docs: name the DSH missing-patch refusal and finish the Connect → API Keys rename

Review on #6613: a Desktop profile without cordis.patch.yml makes Apply refuse with the create-[] remedy rather than write the patch or fall back to settings.yaml, and the remote-hub, CLI lifecycle and Codex integration pages still pointed at Integrations → API Keys or the Integrations overview.
* fix(test): keep armed test processes out of the real Codex home

A local suite run rewrote the real ~/.codex catalog twice (#6529): a
convergence ran with OPENCODEX_HOME in the test temp tree and
CODEX_HOME unset, so it resolved os.homedir()/.codex, which ignores
the preload's HOME on macOS. The real-home guard covered the OpenCodex
home and native auth.json, not the catalog, models cache, journal or
config.toml.

atomicWriteFile now refuses any write whose directory is the real Codex
home in an armed test process, and K refuses it before the owner
precheck, so a test never gets a catalog permit for it.

Refs #6529

* test: probe the unset-CODEX_HOME fallback against the real-home guard

Run the probe child with CODEX_HOME absent and HOME/USERPROFILE at the
sentinel home, check getCodexHome() resolves there, and check every
Codex-home write and K are refused. This is the path the incident took.

---------

Co-authored-by: JUN <jun@lidgeai.com>
…ot starve claude.ai (#6511) (#6610)

* fix(claude): serve the Desktop picker over HTTP/2 so SSE streams cannot starve claude.ai (#6511)

The picker listener terminated claude.ai with an HTTP/1.1-only TLS server.
Claude Desktop keeps several messages/stream SSE subscriptions open, each
holding one of Chromium's six per-origin HTTP/1.1 connections, so later
claude.ai requests queued in the client and timed out before reaching
OpenCodex. Blind tunnels negotiate HTTP/2 with Anthropic and multiplex.

The listener port is now a TCP front that reads the TLS ClientHello ALPN
offer (bounded multi-record reassembly) and splices the untouched
connection to an HTTP/2 server when the client offers h2, or to the
existing native HTTP/1.1 relay otherwise (WebSockets included). HTTP/2
requests are translated for the HTTP/1.1 upstream (:authority -> Host,
cookie crumbs joined) and cancellation follows the underlying stream.
Shutdown force-closes every front, bridge, h2 and HTTP/1.1 socket.

* fix(claude): bound picker h2 fan-out and refuse unrelayable h2 targets

Security review of #6610: an HTTP/2 :method or :path that the HTTP/1.1
client cannot express threw before cleanup was installed, and one
connection could open unbounded streams, each dialing upstream. Validate
h2 targets and guard request construction (empty 400, fixed log line),
advertise maxConcurrentStreams 100 per session and cap in-flight upstream
requests at 256 listener-wide (empty 503 without dialing).

* fix(claude): refuse picker targets the URL parser rejects

Security re-review of #6610: an origin-form h2 path such as //[ passed
the target check but threw in new URL() before the refusal boundary.
Parse the pathname inside it and answer an empty 400.

* fix(claude): do not log a client-cancelled picker request as 502

Hosted CI on #6610: cancelling an h2 HEAD before upstream headers closed
upstream as intended, but the teardown error then wrote a 502 log line
for a client that had already gone. Ignore upstream errors once the
client side closed first. The ALPN test now asserts only that HTTP/1.1
clients never get h2: Bun's native HTTP/1.1 server does not report its
ALPN choice.
…#6618)

* fix(cli): stop echoing values in claude desktop apply argument errors

parseDesktopApplyArgs printed unknown arguments verbatim, so an inline
--token=<value> or a stray credential operand reached the terminal.
Show options by name only and bare operands as <redacted>.

* fix(cli): never echo rejected claude desktop arguments

Security review of #6618: option names can still carry values (-tVALUE,
dash-prefixed operands) and control characters. Apply errors now count
unknown arguments and list the valid options; move/default show a route
operand only when it is a plain provider/model id.

* fix(cli): keep desktop bind and profile file errors free of operands

Security re-review of #6618: bind errors echoed a rejected picker id and
an unavailable route, and import/export printed filesystem errors that
carry the user-supplied path. Binding errors now omit the id and show a
route only as a plain provider/model id; profile file failures report
the operation and error code.

* fix(cli): drop rejected route operands from desktop errors

Security re-review of #6618: a route that only looks like provider/model
is still a rejected operand. move/default and bind now say the route is
unavailable and point to ocx claude desktop show, without echoing it.
)

* fix(gui): keep Claude Desktop role selects inside the Models card

A long unavailable stored model plus its status overflowed the role
select at 390px (chevron and status clipped) and squeezed the label
column to nothing at 768px. Bound the controls column, let the route
truncate inside the trigger while the translated status and chevron
stay whole, and put the full text in the trigger tooltip.

* test(gui): cover the unavailable role choice label and tooltip

The route sits in its own truncating span, the translated status in a
separate element, and the trigger's tooltip carries the full text.
…ffers Retry (#6623)

* fix(gui): start the integration dialog on Close and offer Retry when client status fails

Found by the R4 audit of #6597: showModal() focused the invisible backdrop dismiss button, so the dialog opened with no visible focus and Space dismissed it unseen; and a cold status-load failure on a client page had no way to retry.

* docs(devlog): record the #6597 GUI audit and the R4 CI plan

* test(gui): cover the dialog's initial focus and the client-status Retry
…oxy (#6622)

* fix(cli): name ocx start when integration preview finds no running proxy

* test(cli): pass preview stopped-proxy cases as object rows
…in argument errors (#6608)

* fix(cli): reject arguments to uninstall and redact credential values in argument errors

* fix(cli): keep adjacent credential options and option-shaped positionals redacted; cover models leftovers

* fix(cli): redact bare leftovers whenever argv carried a credential option

* fix(cli): scrub argv credential operands from console diagnostics as a last-line guard

* fix(cli): scrub only diagnostics streams and always collect inline credential operands

* fix(cli): redact credential-shaped unknown provider subcommands at the output site
…th, update; validate provider add before saving (#6614)

* fix(cli): honest exit codes and JSON receipts for config, alias, health, update; validate provider add before saving

* fix(cli): name the recovery path when provider changes are refused by config validation
… management refusals (#6615)

* fix(cli): name the real cause and next action in restart, update, and management refusals

* fix(cli): stop the owning proxy before reinstall advice; scope integration writer detail to the normalized route

* fix(cli): render fixed integration recovery guidance instead of writer prose

* test(cli): expect the no-request stopped-proxy guidance on Codex login routing
@lidge-jun
lidge-jun requested a review from Ingwannu as a code owner October 5, 2026 11:09
@coderabbitai

coderabbitai Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 644 files, which is 344 over the limit of 300.

To get a review, reduce the PR to 300 files or fewer by splitting it into smaller PRs or changing its base branch.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration
  • Configuration used: Repository: lidge-jun/opencodex/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 44a8ad57-81f8-4828-9813-0e9fb442b14f
📥 Commits

Reviewing files that changed from the base of the PR and between 0684116 and e847a24.

⛔ Files ignored due to path filters (1)
  • desktop/src-tauri/Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (644)
  • bin/ocx.mjs
  • desktop/src-tauri/Cargo.toml
  • desktop/src-tauri/tauri.conf.json
  • devlog/_fin/261003_cli_gui_parity/000_plan.md
  • devlog/_fin/261003_cli_gui_parity/002_terminal_ux.md
  • devlog/_fin/261003_cli_gui_parity/003_verification_strategy.md
  • devlog/_fin/261003_cli_gui_parity/004_settings_coverage.md
  • devlog/_fin/261003_cli_gui_parity/005_operations_coverage.md
  • devlog/_fin/261003_cli_gui_parity/006_target_contracts.md
  • devlog/_fin/261003_cli_gui_parity/007_architecture_decisions.md
  • devlog/_fin/261003_cli_gui_parity/008_task_ledger.json
  • devlog/_fin/261003_cli_gui_parity/009_roadmap_lock.md
  • devlog/_fin/261003_cli_gui_parity/010_discovery_foundation.md
  • devlog/_fin/261003_cli_gui_parity/011_foundation_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/012_foundation_verification.md
  • devlog/_fin/261003_cli_gui_parity/020_existing_workflow_discovery.md
  • devlog/_fin/261003_cli_gui_parity/021_discovery_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/022_discovery_verification.md
  • devlog/_fin/261003_cli_gui_parity/030_provider_management.md
  • devlog/_fin/261003_cli_gui_parity/031_provider_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/032_provider_verification.md
  • devlog/_fin/261003_cli_gui_parity/040_models_routing.md
  • devlog/_fin/261003_cli_gui_parity/041_models_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/042_models_verification.md
  • devlog/_fin/261003_cli_gui_parity/050_accounts_runtime_settings.md
  • devlog/_fin/261003_cli_gui_parity/051_accounts_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/052_accounts_verification.md
  • devlog/_fin/261003_cli_gui_parity/060_integrations_maintenance.md
  • devlog/_fin/261003_cli_gui_parity/061_integrations_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/062_integrations_verification.md
  • devlog/_fin/261003_cli_gui_parity/070_observation_api_tools.md
  • devlog/_fin/261003_cli_gui_parity/071_observation_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/072_observation_verification.md
  • devlog/_fin/261003_cli_gui_parity/080_acceptance_publication.md
  • devlog/_fin/261003_cli_gui_parity/081_acceptance_revalidation.md
  • devlog/_fin/261003_cli_gui_parity/082_acceptance_contract.md
  • devlog/_fin/261003_cli_gui_parity/083_residual_read_workflows.md
  • devlog/_fin/261003_cli_gui_parity/084_acceptance_evidence.md
  • devlog/_fin/261003_cli_gui_parity/085_residual_verification.md
  • devlog/_fin/261003_cli_gui_parity/086_review_reconciliation.md
  • devlog/_fin/261003_cli_gui_parity/090_acceptance_closure.md
  • devlog/_fin/261004_cli_update_restart/000_plan.md
  • devlog/_fin/261004_cli_update_restart/010_delivery.md
  • devlog/_fin/261005_claude_settings_ux/000_plan.md
  • devlog/_fin/261005_claude_settings_ux/010_phase1_claude_code_single_page.md
  • devlog/_fin/261005_claude_settings_ux/020_phase2_desktop_model_roles.md
  • devlog/_fin/261005_claude_settings_ux/030_phase3_land.md
  • devlog/_plan/261003_release_stabilization/016_regression_acceptance.md
  • devlog/_plan/261003_release_stabilization/021_candidate_first_run.md
  • devlog/_plan/261003_release_stabilization/022_candidate_acceptance.md
  • devlog/_plan/261003_release_stabilization/031_publication_outcome.md
  • devlog/_plan/261004_cache_identity/000_plan.md
  • devlog/_plan/261004_cache_identity/010_caller.md
  • devlog/_plan/261004_cache_identity/020_devin.md
  • devlog/_plan/261004_claude_request_preservation/000_plan.md
  • devlog/_plan/261004_claude_request_preservation/010_tool_names.md
  • devlog/_plan/261004_claude_request_preservation/020_native_pool.md
  • devlog/_plan/261004_claude_request_preservation/030_preferences.md
  • devlog/_plan/261004_sidebar_seven_groups/000_plan.md
  • devlog/_plan/261004_sidebar_seven_groups/010_phase1_sidebar_groups.md
  • devlog/_plan/261004_sidebar_seven_groups/020_phase2_claude_embedded_remote_row.md
  • devlog/_plan/261004_sidebar_seven_groups/030_refine_and_land_outcome.md
  • devlog/_plan/261004_translated_reset_retry/000_plan.md
  • devlog/_plan/261004_translated_reset_retry/010_retry.md
  • devlog/_plan/261004_translated_reset_retry/011_verification.md
  • devlog/_plan/261004_translated_reset_retry/020_compaction_allowance_repair.md
  • devlog/_plan/261005_claude_picker_h2/010_plan.md
  • devlog/_plan/261005_r4_gui_audit/000_design_read.md
  • devlog/_plan/261005_r4_gui_audit/010_work_phases.md
  • devlog/_plan/261005_r4_gui_audit/020_findings.md
  • devlog/_plan/261005_r4_gui_audit/030_fix_plan.md
  • devlog/_plan/261005_r4_gui_audit/040_ci_and_report.md
  • docs-site/src/content/docs/fr/guides/claude-code.md
  • docs-site/src/content/docs/fr/guides/integrations.md
  • docs-site/src/content/docs/fr/guides/remote-hub.md
  • docs-site/src/content/docs/fr/guides/web-dashboard.md
  • docs-site/src/content/docs/fr/reference/cli.md
  • docs-site/src/content/docs/fr/reference/cli/agents.md
  • docs-site/src/content/docs/fr/reference/cli/lifecycle.md
  • docs-site/src/content/docs/fr/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/fr/reference/configuration/providers.md
  • docs-site/src/content/docs/guides/claude-code.md
  • docs-site/src/content/docs/guides/codex-integration.md
  • docs-site/src/content/docs/guides/desktop-app.md
  • docs-site/src/content/docs/guides/integrations.md
  • docs-site/src/content/docs/guides/remote-hub.md
  • docs-site/src/content/docs/guides/remote-workspace.md
  • docs-site/src/content/docs/guides/web-dashboard.md
  • docs-site/src/content/docs/ja/guides/claude-code.md
  • docs-site/src/content/docs/ja/guides/integrations.md
  • docs-site/src/content/docs/ja/guides/remote-hub.md
  • docs-site/src/content/docs/ja/guides/web-dashboard.md
  • docs-site/src/content/docs/ja/reference/cli.md
  • docs-site/src/content/docs/ja/reference/cli/agents.md
  • docs-site/src/content/docs/ja/reference/cli/lifecycle.md
  • docs-site/src/content/docs/ja/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/ja/reference/configuration/providers.md
  • docs-site/src/content/docs/ko/guides/claude-code.md
  • docs-site/src/content/docs/ko/guides/integrations.md
  • docs-site/src/content/docs/ko/guides/remote-hub.md
  • docs-site/src/content/docs/ko/guides/web-dashboard.md
  • docs-site/src/content/docs/ko/reference/cli.md
  • docs-site/src/content/docs/ko/reference/cli/agents.md
  • docs-site/src/content/docs/ko/reference/cli/lifecycle.md
  • docs-site/src/content/docs/ko/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/ko/reference/configuration/providers.md
  • docs-site/src/content/docs/reference/adapters.md
  • docs-site/src/content/docs/reference/cli.md
  • docs-site/src/content/docs/reference/cli/agents.md
  • docs-site/src/content/docs/reference/cli/lifecycle.md
  • docs-site/src/content/docs/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/reference/configuration/providers.md
  • docs-site/src/content/docs/reference/configuration/server.md
  • docs-site/src/content/docs/reference/proxy-formats.md
  • docs-site/src/content/docs/ru/guides/claude-code.md
  • docs-site/src/content/docs/ru/guides/integrations.md
  • docs-site/src/content/docs/ru/guides/remote-hub.md
  • docs-site/src/content/docs/ru/guides/web-dashboard.md
  • docs-site/src/content/docs/ru/reference/cli.md
  • docs-site/src/content/docs/ru/reference/cli/agents.md
  • docs-site/src/content/docs/ru/reference/cli/lifecycle.md
  • docs-site/src/content/docs/ru/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/ru/reference/configuration/providers.md
  • docs-site/src/content/docs/tr/guides/claude-code.md
  • docs-site/src/content/docs/tr/guides/integrations.md
  • docs-site/src/content/docs/tr/guides/remote-hub.md
  • docs-site/src/content/docs/tr/guides/web-dashboard.md
  • docs-site/src/content/docs/tr/reference/cli.md
  • docs-site/src/content/docs/tr/reference/cli/agents.md
  • docs-site/src/content/docs/tr/reference/cli/lifecycle.md
  • docs-site/src/content/docs/tr/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/tr/reference/configuration/providers.md
  • docs-site/src/content/docs/troubleshooting/update-failed.md
  • docs-site/src/content/docs/zh-cn/guides/claude-code.md
  • docs-site/src/content/docs/zh-cn/guides/integrations.md
  • docs-site/src/content/docs/zh-cn/guides/remote-hub.md
  • docs-site/src/content/docs/zh-cn/guides/web-dashboard.md
  • docs-site/src/content/docs/zh-cn/reference/cli.md
  • docs-site/src/content/docs/zh-cn/reference/cli/agents.md
  • docs-site/src/content/docs/zh-cn/reference/cli/lifecycle.md
  • docs-site/src/content/docs/zh-cn/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/zh-cn/reference/configuration/providers.md
  • docs-site/src/content/docs/zh-tw/guides/claude-code.md
  • docs-site/src/content/docs/zh-tw/guides/integrations.md
  • docs-site/src/content/docs/zh-tw/guides/remote-hub.md
  • docs-site/src/content/docs/zh-tw/guides/web-dashboard.md
  • docs-site/src/content/docs/zh-tw/reference/cli.md
  • docs-site/src/content/docs/zh-tw/reference/cli/agents.md
  • docs-site/src/content/docs/zh-tw/reference/cli/lifecycle.md
  • docs-site/src/content/docs/zh-tw/reference/cli/providers-accounts.md
  • docs-site/src/content/docs/zh-tw/reference/configuration/providers.md
  • gui/design-system/components.md
  • gui/src/App.tsx
  • gui/src/app-routing.ts
  • gui/src/components/SectionSwitcher.tsx
  • gui/src/components/desktop-zoom-control.tsx
  • gui/src/components/provider-workspace/AnthropicAccountPoolSettings.tsx
  • gui/src/components/theme-switch.tsx
  • gui/src/i18n/de.ts
  • gui/src/i18n/en.ts
  • gui/src/i18n/fr.ts
  • gui/src/i18n/ja.ts
  • gui/src/i18n/ko.ts
  • gui/src/i18n/pt.ts
  • gui/src/i18n/ru.ts
  • gui/src/i18n/tr.ts
  • gui/src/i18n/vi.ts
  • gui/src/i18n/zh-TW.ts
  • gui/src/i18n/zh.ts
  • gui/src/nav-groups.ts
  • gui/src/pages/Claude.tsx
  • gui/src/pages/ClaudeCode.tsx
  • gui/src/pages/ClaudeDesktop.tsx
  • gui/src/pages/Integrations.tsx
  • gui/src/pages/Providers.tsx
  • gui/src/pages/claude-account-empty.tsx
  • gui/src/pages/claude-code-save.ts
  • gui/src/pages/claude-code-sections.tsx
  • gui/src/pages/claude-desktop-roles.ts
  • gui/src/pages/claude-settings.tsx
  • gui/src/pages/claude-tab.ts
  • gui/src/pages/integrations/ConsequenceDialog.tsx
  • gui/src/pages/integrations/FileIntegrationPage.tsx
  • gui/src/pages/integrations/IntegrationPlanDetails.tsx
  • gui/src/pages/integrations/integration-api.ts
  • gui/src/pages/integrations/integration-tabs.ts
  • gui/src/pages/logs-tab-keydown.ts
  • gui/src/pool-settings.ts
  • gui/src/protocol-deep-links.ts
  • gui/src/styles-claudecode-workspace.css
  • gui/src/styles-integrations.css
  • gui/src/styles.css
  • gui/src/styles/anthropic-native-messages.css
  • gui/src/styles/claude-page.css
  • gui/src/styles/section-switcher.css
  • gui/src/styles/sidebar-zoom.css
  • gui/tests/account-pool-strategy.test.tsx
  • gui/tests/anthropic-pool-conditions.test.tsx
  • gui/tests/anthropic-pool-quota-window.test.tsx
  • gui/tests/claude-code-save.test.ts
  • gui/tests/claude-desktop-role-card.test.tsx
  • gui/tests/claude-desktop-roles.test.ts
  • gui/tests/claude-page.test.tsx
  • gui/tests/claudecode-fetch-errors.test.tsx
  • gui/tests/claudecode-layout.test.ts
  • gui/tests/claudecode-save-bar.test.tsx
  • gui/tests/consequence-dialog.test.tsx
  • gui/tests/dashboard-tabs.test.ts
  • gui/tests/fr-localization.test.ts
  • gui/tests/i18n-language-switch.test.tsx
  • gui/tests/integration-preview-confirmations.test.tsx
  • gui/tests/integrations-api.test.ts
  • gui/tests/integrations-routing.test.ts
  • gui/tests/integrations-surfaces.test.tsx
  • gui/tests/integrations-tab-coverage.test.ts
  • gui/tests/locale-parity.test.ts
  • gui/tests/logs-tab-keydown.test.ts
  • gui/tests/section-switcher.test.tsx
  • gui/tests/sidebar-codex-mark.test.tsx
  • gui/tests/sidebar-codex-set.test.ts
  • gui/tests/sidebar-rows.test.ts
  • gui/tests/theme-switch-dom.test.tsx
  • package.json
  • scripts/generate-ocx-skill-surface.ts
  • scripts/test-layout/layout.json
  • skills/ocx/SKILL.md
  • skills/ocx/references/01_management_surface.md
  • skills/ocx/references/01_surface_access-remote.md
  • skills/ocx/references/01_surface_accounts.md
  • skills/ocx/references/01_surface_agents-routing.md
  • skills/ocx/references/01_surface_integrations.md
  • skills/ocx/references/01_surface_lab.md
  • skills/ocx/references/01_surface_lifecycle.md
  • skills/ocx/references/01_surface_observe-system.md
  • skills/ocx/references/01_surface_providers-models.md
  • skills/ocx/references/02_json_shapes.md
  • skills/ocx/references/03_recipes.md
  • skills/ocx/references/04_failure_semantics.md
  • skills/ocx/references/05_remote_hub.md
  • src/adapters/anthropic/beta-allowlist.ts
  • src/adapters/anthropic/client-identity.ts
  • src/adapters/anthropic/native-client-preamble.ts
  • src/adapters/anthropic/passthrough.ts
  • src/adapters/devin.ts
  • src/adapters/devin/cloud-direct/chat.ts
  • src/adapters/devin/trajectory.ts
  • src/adapters/ollama-native.ts
  • src/claude/intercept/client-hello.ts
  • src/claude/intercept/model-bindings.ts
  • src/claude/intercept/picker-listener.ts
  • src/cli/access-audio-input.ts
  • src/cli/access-audio-live.ts
  • src/cli/access-audio.ts
  • src/cli/access-data-client.ts
  • src/cli/access-data-plane.ts
  • src/cli/access-data-response.ts
  • src/cli/access.ts
  • src/cli/account-api.ts
  • src/cli/account-auth.ts
  • src/cli/account-key-quota.ts
  • src/cli/account-main.ts
  • src/cli/account-next-actions.ts
  • src/cli/account-policy-dto.ts
  • src/cli/account-policy.ts
  • src/cli/account-target.ts
  • src/cli/account.ts
  • src/cli/agent-runtime-settings.ts
  • src/cli/agent-settings.ts
  • src/cli/agent.ts
  • src/cli/alias.ts
  • src/cli/aside-profiles.ts
  • src/cli/capabilities-access-remote.ts
  • src/cli/capabilities-accounts.ts
  • src/cli/capabilities-agents-routing.ts
  • src/cli/capabilities-base.ts
  • src/cli/capabilities-command.ts
  • src/cli/capabilities-integrations.ts
  • src/cli/capabilities-lab.ts
  • src/cli/capabilities-observe-system.ts
  • src/cli/capabilities-provider-models.ts
  • src/cli/capabilities.ts
  • src/cli/capability-types.ts
  • src/cli/catalog-command-result.ts
  • src/cli/chatgpt-command.ts
  • src/cli/claude-agent-startup-sync.ts
  • src/cli/claude-desktop-profile.ts
  • src/cli/claude-desktop.ts
  • src/cli/codex-shim-autorestore.ts
  • src/cli/codex-shim-readiness.ts
  • src/cli/combo-input.ts
  • src/cli/combo-result.ts
  • src/cli/combo-stats.ts
  • src/cli/combo.ts
  • src/cli/companion-timeline.ts
  • src/cli/companion-usage.ts
  • src/cli/companion.ts
  • src/cli/config-command.ts
  • src/cli/dispatch.ts
  • src/cli/doctor.ts
  • src/cli/help-catalog.ts
  • src/cli/help-recovery.ts
  • src/cli/help.ts
  • src/cli/index.ts
  • src/cli/injection-follow.ts
  • src/cli/inspect.ts
  • src/cli/integration-aside-sync.ts
  • src/cli/integration-cursor.ts
  • src/cli/integration-input.ts
  • src/cli/integration-journal.ts
  • src/cli/integration-plan-dto.ts
  • src/cli/integration-preview.ts
  • src/cli/integrations.ts
  • src/cli/json-input.ts
  • src/cli/link.ts
  • src/cli/local-sync-result.ts
  • src/cli/log-follow.ts
  • src/cli/log-view-filter.ts
  • src/cli/logout-command.ts
  • src/cli/model-picker-ordering.ts
  • src/cli/models-custom-input.ts
  • src/cli/models-custom-runtime.ts
  • src/cli/models-order.ts
  • src/cli/models-runtime-subcommands.ts
  • src/cli/models-runtime.ts
  • src/cli/models.ts
  • src/cli/observe-stream.ts
  • src/cli/observe.ts
  • src/cli/provider-batch.ts
  • src/cli/provider-lifecycle-runtime.ts
  • src/cli/provider-result.ts
  • src/cli/provider-runtime.ts
  • src/cli/provider-settings.ts
  • src/cli/provider.ts
  • src/cli/registry.ts
  • src/cli/remote-workspace-hub.ts
  • src/cli/remote-workspace.ts
  • src/cli/restart-failure.ts
  • src/cli/root.ts
  • src/cli/route-policy-write.ts
  • src/cli/route-policy.ts
  • src/cli/runtime-api.ts
  • src/cli/secret-args.ts
  • src/cli/settings-result.ts
  • src/cli/storage.ts
  • src/cli/system-command.ts
  • src/cli/system-restart-client.ts
  • src/cli/system-settings-parity.ts
  • src/cli/update-restart-candidate.ts
  • src/cli/update-restart-child.ts
  • src/cli/update-restart-home.ts
  • src/cli/update-restart-transport.ts
  • src/cli/update-restart.ts
  • src/cli/usage-model-search.ts
  • src/cli/usage-report.ts
  • src/cli/v2-input.ts
  • src/cli/v2-local-output.ts
  • src/cli/v2-runtime.ts
  • src/cli/v2.ts
  • src/clients/config-export.ts
  • src/clients/config-export/dsh.ts
  • src/codex/catalog-self-heal.ts
  • src/codex/catalog-write-serialization.ts
  • src/codex/catalog/build-entries.ts
  • src/codex/catalog/bundled.ts
  • src/codex/catalog/heal-observation.ts
  • src/codex/catalog/publication-observer.ts
  • src/codex/catalog/remote.ts
  • src/codex/catalog/restore.ts
  • src/codex/catalog/retained-sync.ts
  • src/codex/catalog/routed-removal.ts
  • src/codex/catalog/write-audit-contract.ts
  • src/codex/catalog/write-audit.ts
  • src/codex/codex-home-owner.ts
  • src/codex/convergence.ts
  • src/codex/features.ts
  • src/codex/inject.ts
  • src/codex/inject/restore.ts
  • src/codex/internal/catalog-writer.ts
  • src/codex/journal.ts
  • src/codex/management-convergence.ts
  • src/codex/quota-types.ts
  • src/codex/quota.ts
  • src/codex/refresh.ts
  • src/codex/runtime.ts
  • src/codex/shim-diagnostics.ts
  • src/codex/shim-fingerprint.ts
  • src/codex/shim-migration.ts
  • src/codex/shim-overlay.ts
  • src/codex/shim-path-resolution.ts
  • src/codex/shim-probe.ts
  • src/codex/shim-state-file.ts
  • src/codex/shim.ts
  • src/codex/sync.ts
  • src/combos/failover.ts
  • src/combos/index.ts
  • src/combos/resolve.ts
  • src/config/atomic-write.ts
  • src/config/diagnostics.ts
  • src/config/load-degrade.ts
  • src/config/schema/chatgpt-desktop.ts
  • src/config/schema/config-schema.ts
  • src/config/schema/leaf-validators.ts
  • src/integrations/merge.ts
  • src/integrations/mutation-plan.ts
  • src/integrations/omp-yaml-source.ts
  • src/integrations/ownership-policy.ts
  • src/integrations/registry.ts
  • src/integrations/state.ts
  • src/integrations/target.ts
  • src/integrations/writer.ts
  • src/lib/package-tree-integrity.ts
  • src/lib/proxy-env.ts
  • src/lib/test-home-guard.ts
  • src/oauth/anthropic-account-refusal.ts
  • src/oauth/anthropic-routing.ts
  • src/oauth/anthropic.ts
  • src/oauth/index.ts
  • src/oauth/pool-settings-capability.ts
  • src/protocols/plan-snapshot.ts
  • src/protocols/settings.ts
  • src/server/caller-session-identity.ts
  • src/server/claude-messages.ts
  • src/server/index.ts
  • src/server/index/serve-options.ts
  • src/server/management/agent-settings-routes.ts
  • src/server/management/context.ts
  • src/server/management/cursor-integration-routes.ts
  • src/server/management/integration-routes.ts
  • src/server/management/model-routes.ts
  • src/server/management/native-integration-routes.ts
  • src/server/management/oauth-account-routes.ts
  • src/server/management/route-registry.ts
  • src/server/messages-native-eligibility.ts
  • src/server/messages-native-oauth.ts
  • src/server/messages-native.ts
  • src/server/responses/adapter-dispatch.ts
  • src/server/responses/core-auth.ts
  • src/server/responses/core-combo.ts
  • src/service/cli.ts
  • src/service/ownership-mutation-lease.d.mts
  • src/service/ownership-mutation-lease.mjs
  • src/types/config.ts
  • src/types/provider.ts
  • src/update/index.ts
  • src/update/update-failure-guidance.d.mts
  • src/update/update-failure-guidance.mjs
  • structure/INDEX.md
  • structure/catalog.md
  • structure/cli-management.md
  • structure/clients/claude-desktop.md
  • structure/clients/integrations.md
  • structure/codex-account-controls.md
  • structure/codex-home.md
  • structure/config.md
  • structure/dashboard-and-usage.md
  • structure/data-planes/inbound-compat.md
  • structure/data-planes/protocol-paths.md
  • structure/decisions/ADR-6574-ollama-tool-continuations.md
  • structure/decisions/ADR-6598-management-inference-port.md
  • structure/gui-and-management-api.md
  • structure/manifest.json
  • structure/ops/docs-and-release.md
  • structure/ops/service-and-sidecars.md
  • structure/providers-and-adapters.md
  • structure/providers/anthropic-account-pool.md
  • structure/providers/chat-compat.md
  • structure/providers/openai-tiers.md
  • structure/remote-link.md
  • structure/remote-workspace.md
  • structure/runtime.md
  • structure/transports/inventory.md
  • structure/transports/responses-failover.md
  • structure/transports/responses.md
  • tests/adapters/anthropic/anthropic-account-pool.test.ts
  • tests/adapters/anthropic/anthropic-beta-allowlist.test.ts
  • tests/adapters/anthropic/anthropic-client-identity.test.ts
  • tests/adapters/anthropic/anthropic-messages-passthrough-oauth.test.ts
  • tests/ci-workflows/package-tree-integrity.test.ts
  • tests/ci-workflows/skill-ocx-generated.test.ts
  • tests/ci-workflows/skill-ocx-workflows.test.ts
  • tests/ci-workflows/skill-ocx.test.ts
  • tests/ci-workflows/test-home-guard.test.ts
  • tests/claude-integration/claude-desktop-first-party-guards.test.ts
  • tests/claude-integration/claude-desktop-first-party.test.ts
  • tests/claude-integration/claude-intercept-model-bindings.test.ts
  • tests/claude-integration/claude-native-affinity.test.ts
  • tests/claude-integration/claude-picker-listener.test.ts
  • tests/claude-integration/messages-native-oauth.test.ts
  • tests/cli/cli-access-audio-live.test.ts
  • tests/cli/cli-access-audio.test.ts
  • tests/cli/cli-access-data-plane.test.ts
  • tests/cli/cli-access-key-guard.test.ts
  • tests/cli/cli-access-rename.test.ts
  • tests/cli/cli-account-key-quota.test.ts
  • tests/cli/cli-account-login-options.test.ts
  • tests/cli/cli-account-policy.test.ts
  • tests/cli/cli-account-verify-status.test.ts
  • tests/cli/cli-account.test.ts
  • tests/cli/cli-agent-runtime-settings.test.ts
  • tests/cli/cli-agent-settings.test.ts
  • tests/cli/cli-alias-json.test.ts
  • tests/cli/cli-aside-sync.test.ts
  • tests/cli/cli-capabilities.test.ts
  • tests/cli/cli-capability-access-workflows.test.ts
  • tests/cli/cli-capability-account-workflows.test.ts
  • tests/cli/cli-capability-agent-workflows.test.ts
  • tests/cli/cli-capability-data.test.ts
  • tests/cli/cli-capability-integration-workflows.test.ts
  • tests/cli/cli-capability-lab-workflows.test.ts
  • tests/cli/cli-capability-operation-workflows.test.ts
  • tests/cli/cli-capability-provider-workflows.test.ts
  • tests/cli/cli-catalog-command-result.test.ts
  • tests/cli/cli-claude-desktop-profile.test.ts
  • tests/cli/cli-combo-parity.test.ts
  • tests/cli/cli-combo-partial-update.test.ts
  • tests/cli/cli-combo-stats.test.ts
  • tests/cli/cli-companion-timeline.test.ts
  • tests/cli/cli-companion-usage.test.ts
  • tests/cli/cli-config-command.test.ts
  • tests/cli/cli-config-default-show.test.ts
  • tests/cli/cli-connect-readiness.test.ts
  • tests/cli/cli-dispatch.test.ts
  • tests/cli/cli-head.test.ts
  • tests/cli/cli-headless-parity.test.ts
  • tests/cli/cli-help-navigation.test.ts
  • tests/cli/cli-help-paths.test.ts
  • tests/cli/cli-help-recovery.test.ts
  • tests/cli/cli-injection-follow.test.ts
  • tests/cli/cli-integration-cursor.test.ts
  • tests/cli/cli-integration-droid.test.ts
  • tests/cli/cli-integration-journal.test.ts
  • tests/cli/cli-integration-preview.test.ts
  • tests/cli/cli-json-input.test.ts
  • tests/cli/cli-link-force.test.ts
  • tests/cli/cli-log-follow.test.ts
  • tests/cli/cli-log-view-filter.test.ts
  • tests/cli/cli-logout-runtime.test.ts
  • tests/cli/cli-models-custom-runtime.test.ts
  • tests/cli/cli-models-display-name.test.ts
  • tests/cli/cli-models-local-result.test.ts
  • tests/cli/cli-models-order.test.ts
  • tests/cli/cli-models.test.ts
  • tests/cli/cli-observe-snapshot.test.ts
  • tests/cli/cli-provider-batch.test.ts
  • tests/cli/cli-provider-lifecycle-runtime.test.ts
  • tests/cli/cli-provider-result.test.ts
  • tests/cli/cli-provider-settings.test.ts
  • tests/cli/cli-provider-sync-result.test.ts
  • tests/cli/cli-provider.test.ts
  • tests/cli/cli-ready.test.ts
  • tests/cli/cli-remote-workspace-hub.test.ts
  • tests/cli/cli-restart-health.test.ts
  • tests/cli/cli-route-policy-write.test.ts
  • tests/cli/cli-storage-policy-fields.test.ts
  • tests/cli/cli-system-health.test.ts
  • tests/cli/cli-system-settings-parity.test.ts
  • tests/cli/cli-transport-honesty.test.ts
  • tests/cli/cli-update-restart-child.test.ts
  • tests/cli/cli-update-restart-home.test.ts
  • tests/cli/cli-update-restart-transport.test.ts
  • tests/cli/cli-update-restart.test.ts
  • tests/cli/cli-usage-model-search.test.ts
  • tests/cli/cli-usage-report.test.ts
  • tests/cli/cli-usage-scope.test.ts
  • tests/cli/cli-v2-runtime.test.ts
  • tests/cli/system-restart-client.test.ts
  • tests/clients/desktop-app-server-shim-launcher.test.ts
  • tests/clients/desktop-chatgpt-config.test.ts
  • tests/clients/droid-normalized-reasoning-defaults.test.ts
  • tests/clients/integrations-dsh-profile-patch.test.ts
  • tests/clients/integrations-merge.test.ts
  • tests/clients/integrations-superseded-store.test.ts
  • tests/clients/kilo-client.test.ts
  • tests/codex-integration/catalog-remote-pull.test.ts
  • tests/codex-integration/client-injection-guard.test.ts
  • tests/codex-integration/codex-catalog-heal-integration.test.ts
  • tests/codex-integration/codex-catalog-intent.test.ts
  • tests/codex-integration/codex-catalog-routed-removal.test.ts
  • tests/codex-integration/codex-catalog-self-heal.test.ts
  • tests/codex-integration/codex-catalog-sync-hardening.test.ts
  • tests/codex-integration/codex-catalog-write-audit.test.ts
  • tests/codex-integration/codex-catalog-write-serialization.test.ts
  • tests/codex-integration/codex-catalog-writer.test.ts
  • tests/codex-integration/codex-convergence-account-selectors.test.ts
  • tests/codex-integration/codex-convergence-contract.test.ts
  • tests/codex-integration/codex-credits-after-limit-main.test.ts
  • tests/codex-integration/codex-home-owner-lifecycle.test.ts
  • tests/codex-integration/codex-home-owner.test.ts
  • tests/codex-integration/codex-journal.test.ts
  • tests/codex-integration/codex-models-cache-invalidate.test.ts
  • tests/codex-integration/codex-quota-parser-parity.test.ts
  • tests/codex-integration/codex-retained-root-serialization.test.ts
  • tests/codex-integration/codex-shim-autorestore.test.ts
  • tests/codex-integration/codex-shim-destroyed-probe.test.ts
  • tests/codex-integration/codex-shim-ensure-failure.test.ts
  • tests/codex-integration/codex-shim-fnm.test.ts
  • tests/codex-integration/codex-shim-migration.test.ts
  • tests/codex-integration/codex-shim-overlay-candidates.test.ts
  • tests/codex-integration/codex-shim-overlay-readiness.test.ts
  • tests/codex-integration/codex-shim-overlay-transaction.test.ts
  • tests/codex-integration/codex-shim-overlay.test.ts
  • tests/codex-integration/codex-shim-path-readiness.test.ts
  • tests/codex-integration/codex-shim-readiness.test.ts
  • tests/codex-integration/codex-shim-standalone.test.ts
  • tests/codex-integration/codex-shim.test.ts
  • tests/codex-integration/codex-sync-api.test.ts
  • tests/codex-integration/codex-v2-gate.test.ts
  • tests/codex-integration/multi-agent-keep-native-v1.test.ts
  • tests/config/config-load-degrade.test.ts
  • tests/config/protocol-settings.test.ts
  • tests/fixtures/provider-outbound-e2e.ts
  • tests/fixtures/test-layout-expected.json
  • tests/helpers/cli-capability-data.ts
  • tests/helpers/codex-shim-install-fixture.ts
  • tests/helpers/desktop-app-server-shim-command-child.ts
  • tests/oauth/oauth-refresh.test.ts
  • tests/providers/cursor/cursor-integration-status.test.ts
  • tests/providers/devin-adapter-reset-wait.test.ts
  • tests/providers/devin-anthropic-signature-fallback.test.ts
  • tests/providers/devin-prompt-cache.test.ts
  • tests/providers/devin-trajectory.test.ts
  • tests/providers/ollama/ollama-native-tool-continuations.test.ts
  • tests/providers/ollama/ollama-native.test.ts
  • tests/providers/provider-outbound.test.ts
  • tests/providers/xai/grok-session-identity.test.ts
  • tests/responses/chat-conversation-affinity.test.ts
  • tests/responses/messages-native-eligibility.test.ts
  • tests/responses/messages-native-oauth-eligibility.test.ts
  • tests/responses/protocol-plan-snapshot.test.ts
  • tests/responses/responses-combo-exhausted-error.test.ts
  • tests/responses/responses-compaction-recovery.test.ts
  • tests/responses/responses-translated-reset.test.ts
  • tests/server/account-pool-management-api.test.ts
  • tests/server/caller-session-identity.test.ts
  • tests/server/caller-session-ingress.test.ts
  • tests/server/loopback-listener-admission.test.ts
  • tests/server/loopback-listener-integration.test.ts
  • tests/server/management-client-config-route.test.ts
  • tests/server/management-inference-port.test.ts
  • tests/server/server-cli-key-probe-admission.test.ts
  • tests/service/doctor-codex-envkey-readiness.test.ts
  • tests/service/service-ownership-state.test.ts
  • tests/update/update-stop-first.test.ts
  • tests/update/update-transactional-leftovers.test.ts

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 5, 2026

Copy link
Copy Markdown
Contributor

✅ Deterministic PR hygiene checks passed.

@github-actions github-actions Bot changed the title release: 2.78.0 [WRONG BRANCH] release: 2.78.0 Oct 5, 2026
@github-actions

github-actions Bot commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

⏳ DRAFT

  • wrong target branch (main); retarget to dev.

What to do

  • Retarget this PR to dev — all contributions go to dev.

Its title has been prefixed with [WRONG BRANCH].
Automatic draft conversion failed (token cannot change draft status). Please convert this pull request to a draft manually. The required enforce-target check will keep failing until every issue above is resolved.

@github-actions
github-actions Bot marked this pull request as draft October 5, 2026 11:10
@lidge-jun
lidge-jun marked this pull request as ready for review October 5, 2026 11:30
@lidge-jun

Copy link
Copy Markdown
Owner Author

Stable release promotion by the repository owner (lidge-jun), as with #6550. enforce-target's wrong-branch verdict is expected for a maintainer promotion into main. CodeQL reports the whole candidate diff against main as new alerts, as it did on #6550; the same tree passed dev CI and shipped as 2.78.0-preview.20261005. This PR's Cross-platform CI passed at e847a24. Dev pre-move #6631 is merged, so dev (2.79.0) outranks 2.78.0.

@lidge-jun
lidge-jun merged commit 93cdffd into main Oct 5, 2026
42 of 44 checks passed
@lidge-jun
lidge-jun deleted the codex/promote-main-2.78.0 branch October 5, 2026 11:30
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.

10 participants