Skip to content

feat(agent): coordinate shared local inference#97

Merged
Brooooooklyn merged 36 commits into
mainfrom
agent/mlx-agent-reliability
Jul 18, 2026
Merged

feat(agent): coordinate shared local inference#97
Brooooooklyn merged 36 commits into
mainfrom
agent/mlx-agent-reliability

Conversation

@Brooooooklyn

@Brooooooklyn Brooooooklyn commented Jul 12, 2026

Copy link
Copy Markdown
Contributor

Summary

  • run Pi subagents as isolated in-process sessions that share one serialized MlxModelHost, model registry, and physical paged KV pool instead of loading one model per child process
  • size Qwen3.5/Qwen3.6 dense and MoE paged pools after weight materialization from live unified-memory ceilings; explicit cache budgets remain maxima and cannot bypass the safety cap
  • publish the physical context window to Pi, scale subagent compaction budgets, preflight exact rendered prompts, and convert capacity failures into clean agent compaction or HTTP 400 paths
  • force a full-history replay after interrupted or failed native deltas so JavaScript history cannot diverge from committed native cache state
  • add a restart-safe SSD cold-cache primitive with stable model/prefix keys, checksummed safetensors, bounded atomic writes, quota/LRU enforcement, and transactional restore
  • preserve the earlier terminal-title, split reasoning-tag, and permission-summary fixes in this branch
  • request native timing metrics and show transient prefill/decode tok/s in Pi's TUI footer; clear stale rates at turn/model boundaries without persisting telemetry

Why the allocator exhausted

The previous fixed/default pool could advertise a 262,144-token trained window while physically holding about 104,848 tokens. Pi therefore continued sending turns after the hot KV pool was full, producing BlockAllocator exhausted. The loaded model now exposes both trained and physical limits, and both TypeScript and native paged entry points reject or clamp before allocator mutation.

Shared-host behavior

Parallel subagents may run up to four independent Pi tool loops, but all inference is serialized through one resident model host. Each subagent keeps independent in-memory conversation, settings, cwd, tools, skills, and project context. Model weights and the paged pool are loaded only once for the shared model.

SSD tier boundary

This PR provides and verifies the durable cold-cache storage/restore layer, but does not enable Qwen eviction yet. Qwen3.5/3.6 hybrid continuation also needs matching GDN and MTP side state; restoring full-attention K/V alone would be incorrect. Wiring eviction is intentionally deferred until that sidecar can be captured and restored atomically.

Top-level Pi still needs an upstream SettingsManager injection/update hook to scale its fixed compaction reserve for unusually small physical windows. In-process subagents are scaled here; exact preflight remains the correctness backstop everywhere.

Verification

  • full TypeScript suite: 1,737 passed, 21 skipped
  • focused agent/session/server integration: 485 passed
  • agent provider/TUI telemetry suite: 221 passed
  • paged-attention Rust suite: 118 passed
  • native capacity boundary tests: 3 passed
  • cargo check -p mlx-core
  • clippy for mlx-core and mlx-paged-attn with warnings denied
  • TypeScript typecheck and lint
  • Rust and TypeScript formatting checks
  • full release native addon rebuild

Note

High Risk
Changes span serialized multi-agent inference, physical KV/context limits, native cache replay semantics, and paged-attention override cloning—errors can cause wrong model routing, context corruption, or allocator failures under load.

Overview
Agent CLI and Pi handoff now strips --trace / --trace-dir, configures MLX_NODE_LOG / MLX_NODE_LOG_FILE before the native addon loads, and prepends --models mlx/* on most runs so Pi cannot pick a cloud default while still restoring fork/session models. Context capacity is checked in ChatSession (including image-expanded prompts) and in HTTP streaming handlers so oversize requests return JSON context_length_exceeded before SSE or native cache mutation; output maxNewTokens is clamped to the physical window.

Session recovery resets native caches and cold-replays preserved history after failed or abandoned delta/tool/stream paths instead of issuing another delta on possibly desynced KV state. Paged config overrides move behind PagedConfigOverrideManager with separate launch-claude vs agent policies (Gemma draft hiding, MTP sidecar symlinks, collision-safe roots, cleanup races).

Native (mlx-core) adds optional cache_owner_id / cache_root_owner_id on ChatConfig, structured MLX eval errors and deep_copy, decode-profiler token/TTFT accounting fixes, VLM paged-prefix downgrade when GDN sidecars are missing, image-aware cache-key helpers, and DSpark adaptive AR-fallback hooks. Gemma4 e2e expectations shift: pure images warm-continue; audio cold-replays with cachedTokens === 0. image crate enables GIF decoding.

Reviewed by Cursor Bugbot for commit eba950d. Bugbot is set up for automated code reviews on this repo. Configure here.

Qwen3.5 / Qwen3.6 dense and MoE performance update

  • keep PagedAttention enabled and use an exact-shape grouped-GQA Metal path for BF16 D256/BS16 long-context decode: dense 24Q/4KV and MoE 16Q/2KV, including two-row MTP verification
  • preserve generic V2 below measured crossover points, on unsupported devices, and for every other shape; capability or pipeline failures fall back instead of failing inference
  • use conservative layout-specific cutoffs: dense 16K q1 / 8K q2, MoE 32K q1 / 16K q2
  • align graph-native C++ and raw Rust dispatch, stripe/reducer scheduling, auxiliary-memory estimates, cache accounting, and permanent numerical-parity coverage
  • capture materialized MoE GDN state at the final reusable paged-block boundary, restore it by exact token/hash/namespace match before suffix prefill, and bound/materialize full-prefix replay on a miss
  • fix AR/MTP profiling so prefill, TTFT, generated-token count, N-1 decode throughput, replay errors, and TUI metric persistence describe the same turn
  • use normal configurable tracing for inference diagnostics
  • replace deprecated metal-rs 0.33 / objc 0.2 / block 0.1.6 with a narrow ownership-aware adapter over objc2 0.6.4 and objc2-metal 0.3.2

Measurements

Controlled 16K / 128-token runs on the local Qwen3.6-27B MXFP4+MXFP8 dense model, with one loaded model and cold cache before each trial:

Trial Prefill Decode
AR 1 686.9 tok/s 20.6 tok/s
MTP depth 1 577.2 tok/s 18.1 tok/s
AR 2 540.7 tok/s 19.1 tok/s

The bracketing AR weighted decode rate was 19.8 tok/s; MTP reached 91.4% of it with a mean commit of 1.826 tokens/cycle. This confirms the profiler fix and rules out the earlier 12 tok/s report as the healthy short-context baseline.

For Qwen3.6-35B-A3B without MTP, the pre-fix mlx-agent trace reached about 584 tok/s prefill but only 24.2 tok/s decode near 91K context. The corrected oMLX comparison supplied for the same M5 Max class is 547.3 tok/s prefill and 44.9 tok/s decode at 128K, so prefill is already in range and long-context decode is the remaining gap.

Isolated 16Q/2KV raw-attention A/B at 112K cached tokens improved q1 from 3.770 ms to 1.441 ms and q2 from 4.294 ms to 2.148 ms. The release addon is rebuilt; full-model post-fix 35B-A3B validation is pending the next mlx-agent trace.

Additional verification

  • grouped graph numerical parity covers dense/MoE and q1/q2
  • raw Metal host-reference parity covers dense 24Q/4KV and MoE 16Q/2KV q1/q2, including non-finite rejection
  • layout-specific selector, threshold, capability, and auxiliary-sizing tests
  • MoE GDN forced-boundary split parity, exact publish/restore, token/salt rejection, and bounded-replay state parity
  • profiler accounting: 26 passed
  • MTP turn control flow: 23 passed
  • agent CLI/tracing/TUI tests: 84 passed
  • strict Clippy for mlx-core, mlx-paged-attn, and mlx-metal
  • TypeScript build, Rust format, diff check, lint, and release native addon/metallib rebuild
  • dependency-tree proof: block 0.1.6, objc 0.2.7, and metal 0.33 are absent

Gemma4 QAT conversion and agent inference update

  • preserve source GGUF Q4_0/Q4_1/Q8_0 block-32 affine geometry in MLX safetensors; dequantize the supported Gemma4 Q6_K token embedding to BF16, and reject unsupported Q6_K placements
  • add --config-dir plus Gemma4 mmproj remapping so authoritative config/tokenizer assets and unified vision/audio tensors can be carried into the converted checkpoint
  • load unified media sidecars only when the parsed Gemma4 capabilities require them, and hoist BF16 affine-QMM FP16 sidecar widening to model load while preserving projection outputs
  • preserve the thinking-mode provenance used to render historical assistant turns so prompt-cache replay remains byte-stable
  • auto-discover an embedded Gemma4 draft/; mlx agent continues to prefer paged AR and requires MLX_AGENT_ENABLE_GEMMA_DRAFT=1 for the flat speculative path
  • add a measured per-turn DSpark break-even guard that falls back to exact target AR when speculation loses, while explicit depth/adaptive settings retain their documented control
  • add Gemma4 cache-hit prefill/sliding-checkpoint plumbing and an experimental BF16 D512/16Q/1KV grouped paged-attention kernel with graph/reducer parity coverage

The grouped Gemma4 D512 route remains default-off and diagnostic until sequential full-model A/B establishes a safe context/device crossover. The latest 47K-context agent trace confirmed prompt-cache and physical paging correctness at 607.7 tok/s bulk prefill and 15.3 tok/s decode; this update does not claim that the default long-context decode gap is closed yet.

The final unresolved review thread is also addressed: paged override clones now preserve only loader-known Qwen3.5 nested MTP sidecars and reject escaping paths while keeping unrelated directories and Gemma4 draft/ hidden.

Additional verification

  • Qwen paged-override regression suite: 20/20
  • TypeScript typecheck and focused lint
  • Rust and changed-file TypeScript formatting
  • git diff --check
  • full native/Metal validation delegated to the fresh GitHub CI run because a user mlx agent session is active locally

@coderabbitai

coderabbitai Bot commented Jul 12, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: c8ceba76-e7e9-401b-9ac2-8381b0e1e61b

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

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch agent/mlx-agent-reliability

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.

@Brooooooklyn
Brooooooklyn marked this pull request as ready for review July 12, 2026 16:22
@cursor

cursor Bot commented Jul 12, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_b4884de9-270b-40c2-94b2-542be1ad900b)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6a3fe3e40b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/mlx-core/src/models/qwen3_5/model.rs Outdated
@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_45beb517-0ddc-4f4e-a427-fb42f135d258)

@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_952ae4df-3c2e-4938-aacf-86f7401eb5c6)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ea42165ac2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/agent/src/extensions/permission-gate.ts Outdated
Comment thread packages/agent/src/extensions/permission-gate.ts Outdated
@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_373706a5-e317-49f8-9f3d-ec619c4dd1f6)

@Brooooooklyn Brooooooklyn changed the title fix(agent): stabilize long local sessions feat(agent): coordinate shared local inference Jul 13, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1d2db7b781

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/server/src/endpoints/messages.ts Outdated
Comment thread packages/server/src/endpoints/responses.ts Outdated
@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_7f7ef354-45d0-4dd1-83c5-9c6f55e38472)

@coderabbitai

coderabbitai Bot commented Jul 13, 2026

Copy link
Copy Markdown

Caution

Review failed

An error occurred during the review process. Please try again later.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch agent/mlx-agent-reliability

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.

@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_2c86a194-1ca3-4925-8f2b-47d7ef30d0eb)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7deb4979b1

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/lm/src/chat-session.ts Outdated
@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_944fae22-f320-4ab1-9570-3885e618d825)

@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_083c3507-9ee1-4ff7-976b-dfc93c5a0c99)

@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_6df17067-9728-4486-a968-54c749665594)

@cursor

cursor Bot commented Jul 13, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_476877b3-848c-4234-bf8f-0d48ae16c675)

@Brooooooklyn

Brooooooklyn commented Jul 13, 2026

Copy link
Copy Markdown
Contributor Author

Pushed 3b860770 with the long-session Qwen3.6 dense prefill fix.

What changed:

  • keeps the paged KV pool, prefix reuse, and paged decode enabled
  • replaces the old per-query duplicated block table with compact one-row varlen PagedAttention metadata
  • adds a graph-native paged-pool K/V gather for MLX causal SDPA, avoiding the Metal -> CPU -> MLX round trip
  • routes cache-hit prefill from live memory headroom and the actual MLX fused-kernel shape gate
  • accounts for Qwen3.6-27B head_dim=256, where multi-token SDPA materializes the score matrix
  • uses the fast MLX path when the full transient fits and compact varlen PagedAttention under pressure
  • preserves MLX_PAGED_PREFILL_PAGED_ATTENTION=0 as an SDPA-only escape hatch
  • keeps FP8 KV cache on the scale-aware varlen path

Verification:

  • Qwen attention router: 11/11
  • paged cache adapter, including Metal layout/lazy-write tests: 88/88
  • varlen native bridge smoke tests: 9/9
  • cargo check --workspace
  • cargo clippy --all-targets -- -D warnings
  • yarn build and final yarn build:native
  • independent integrated review: approve
  • GitHub CI: all jobs green

I intentionally did not launch the 27B model; the globally linked mlx binary has been rebuilt and is ready for the long-session benchmark.

@Brooooooklyn Brooooooklyn added the model-e2e Run the heavy Model E2E workflow (per-family real-checkpoint tests) on this PR label Jul 17, 2026
@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_4dcb66cd-8095-48d0-b87e-e85788615d05)

@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_3f29558c-aad2-4fb5-b2b0-166e198d72c6)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 6d8e56e3df

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/lm/src/models/paged-config-override.ts Outdated
@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_15453506-7051-4cb6-babc-2896e7a06a6a)

@Brooooooklyn

Copy link
Copy Markdown
Contributor Author

Follow-up multimodal reliability fix is pushed in 2f0ab96c.

The supplied Qwen3.5-MoE trace narrowed the failure to the first 2,048-token cold-prefill chunk, at the layer-8 residual materialization barrier. The changed four-image request contained 10,016 merged image tokens / 40,064 raw vision patches. Our shared Qwen3.5 vision encoder was still creating one global 40,064 x 40,064 block-diagonal mask and retaining that lazy 27-layer vision graph into language prefill.

This update:

  • matches the checked-in official mlx-vlm Qwen path by projecting Q/K/V once, splitting fused SDPA at CPU cu_seqlens image/frame boundaries, and concatenating the outputs;
  • preserves the previous block-diagonal attention result while removing the global quadratic mask and cross-image attention work;
  • materializes vision features before publishing them to VisionCache, then releases the upstream lazy graph;
  • carries synchronous native MLX exceptions across the C ABI and emits them through the configured mlx_core::inference tracing subscriber, removing the misleading MLX_INFERENCE_TRACE_FILE hint from this path;
  • adds start/done/failure vision-materialization events with image/patch counts and elapsed time.

Verification:

  • segmented-vs-block-mask numerical equivalence: passed
  • multi-image no-global-mask regression: passed
  • full mlx-core library suite: passed
  • cargo clippy --all-targets -- -D warnings: passed
  • Rust format and git diff --check: passed
  • independent native error-path review: approved

No additional model process was launched while the user's agent session was resident.

@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_ae45d667-cfee-4f86-9813-d734a3354df7)

@Brooooooklyn

Copy link
Copy Markdown
Contributor Author

Updated in 0885568 with the cumulative multi-image vision memory fix.

What changed:

  • materialize and release each Qwen3.5 vision transformer layer instead of retaining the full lazy encoder graph;
  • cache independently owned per-image features, reuse them across cumulative Pi turns, preserve image order, and bound inactive entries;
  • derive cache and miss-batch budgets from the lowest of unified-memory, MLX, and Metal working-set caps, then subtract live MLX/Metal/paged-KV usage and a safety reserve;
  • reject oversized miss batches and final multi-image feature concatenations before allocation, including all-cache-hit requests;
  • use the typed Metal working-set probe, fixing the previous whitespace-sensitive JSON path;
  • drop processed image aggregates before language prefill in dense/MoE sync and streaming paths.

Validation:

  • cargo test -q -p mlx-core --lib: 2317 passed, 0 failed, 53 ignored;
  • cargo clippy --all-targets -- -D warnings: passed;
  • cargo fmt --all -- --check and git diff --check: passed;
  • focused cache/order/budget, tiny encoder parity, and independent Metal-buffer ownership tests: passed;
  • yarn build:native plus addon/metallib smoke load: passed.

No real model was launched during validation.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0885568348

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/lm/src/chat-session.ts
@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_b5da6746-6d51-45de-b4a2-50faa2050d70)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: efd3d03f01

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread crates/mlx-metal/src/lib.rs
@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_dab47d34-3855-4000-a724-c64e58811676)

@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_3cb59587-a67f-4a98-9cf3-f83b20232e70)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a8992b938d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/agent/src/provider/stream-adapter.ts Outdated
@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_51e61bc3-6c73-4be4-bb74-72db9c71d008)

@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_1273fe0a-7fcd-4fd3-b148-d82a8af26c87)

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 13a86112f2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/agent/src/extensions/subagent.ts Outdated
@cursor

cursor Bot commented Jul 17, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_7e9d43c1-b3cf-4198-9b69-24811500b234)

@Brooooooklyn
Brooooooklyn merged commit 7260342 into main Jul 18, 2026
19 of 20 checks passed
@Brooooooklyn
Brooooooklyn deleted the agent/mlx-agent-reliability branch July 18, 2026 03:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

model-e2e Run the heavy Model E2E workflow (per-family real-checkpoint tests) on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant