Repository navigation
Conversation
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… tests. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
ZoranPandovski
left a comment
There was a problem hiding this comment.
The ENG-3093 items are already on staging: #518 runs the global and project rule filters in parallel and builds the memory prompt once per turn, and #469 removed the router call. So this PR is follow-up latency work, and it would be clearer under its own ticket. Could you also move reasoning_effort into a separate PR? It isn't related to latency and it changes the turn request shared with the controller and cowork-server, so it's easier to review and roll back on its own. The token prefetch and the 3 s limit on the rule filter look good to me; details inline.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…, not the thread. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…sable it. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ine hit. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… reports stop. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
Eval results for the rule filter change. Setup: cowork_evals,
Production, last 7 days (
The cap would fire on nearly every real filter call and bound waits that today run from 20 s to several minutes before the first reply. The calls that do finish take 2.0 to 2.8 s, so the margin is thin; a follow-up should make the filter itself faster rather than only cap it. |
| ], | ||
| max_tokens=_RULE_RETRIEVAL_MAX_TOKENS, | ||
| ), | ||
| timeout=_RULE_RETRIEVAL_TIMEOUT_SECONDS, |
There was a problem hiding this comment.
If we have a lot of rules accumulated - timeout probably will be triggered on every turn
Maybe to add another condition, to not run it if the count of rules is greater than X
And the fix the the problem with count of rules:
- fix the memory compaction on cloud
- brainstorm what we can do if there are lot of rules after compaction: more agressive compaction, split rules into groups and using Jev or llm choose the proper group to find rules
https://linear.app/mindsdb/issue/ENG-3418
What changed
{"keep": [n, ...]}under a 3 s deadline; a timeout, malformed, empty, out of range or truncated answer keeps every conditional rule, an explicit{"keep": []}drops them, and Always/Never rules are always kepttimeoutnow means the 3 s deadline was reachedWhy this matters
Follow up to #518 and #469. Connector tokens were fetched one after another (eight connections at 0.2 s each took 1.64 s in a fake benchmark, 0.41 s with prefetch). The rule filter had no deadline of its own, so a slow filter held the first reply token.
Notes for the reviewer
_fetch_uncached. The calling thread writes the cache after the pool joins. No ContextVar,os.environor secret registry access happens off thread.timeoutoutcome is added; truncation still reportskept_all_no_match, andstop_reasonwithoutput_tokenstells a cap hit from a malformed answer.Ships with
Checks
uv run pytest(full suite, after the effort removal)uv run pytest(full suite, after all review fixes)uv run pytest tests/test_cortex.pyafter the last test🤖 Generated with Claude Code