fix(deploy): default assistant reasoning effort to none - #308
Conversation
|
Warning Review limit reached
Next review available in: 50 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThe assistant route now accepts an OpenAI reasoning-effort setting in API and worker configurations. Production deployment examples default this setting to ChangesAssistant reasoning configuration
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 Generate docstrings
🧪 Generate unit tests (beta)
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. Comment |
TegamiThis repository uses Tegami to manage releases. When your changes affect published packages, add a changelog file under Create a changelog → · Changelog format Release preview
Changelogs in this PR
Run Managed by Tegami. |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.env.example:
- Line 13: Move ORGMEMORY_ASSISTANT_OPENAI_REASONING_EFFORT above
ORGMEMORY_ASSISTANT_RETRIEVAL_ENGINE in .env.example, preserving the existing
key names and values.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 1a03e535-cdd3-4994-8cf7-2c3d661b0421
⛔ Files ignored due to path filters (2)
docs/specs/domains/ai-model-control-plane.mdis excluded by!docs/**docs/tests/domains/ai-model-control-plane.mdis excluded by!docs/**
📒 Files selected for processing (8)
.env.exampleARCHITECTURE.mdapps/api/src/main/resources/application.ymlapps/api/src/test/java/com/orgmemory/api/security/ProductionAiGatewayConfigurationBindingTests.javaapps/worker/src/main/resources/application.ymlapps/worker/src/test/java/com/orgmemory/worker/ProductionAiGatewayConfigurationBindingTests.javainfrastructure/deployment/compose.production.yamlinfrastructure/deployment/production.env.example
📜 Review details
⏰ Context from checks skipped due to timeout. (3)
- GitHub Check: Backend · Java 25
- GitHub Check: Deployment contracts
- GitHub Check: Web · Node 24
🧰 Additional context used
📓 Path-based instructions (2)
**/*
📄 CodeRabbit inference engine (AGENTS.md)
**/*: Treat the repository and runtime evidence as the engineering system of record; do not treat chat or Northstar as authoritative.
Before changing a domain, read its specification, test-coverage document, and applicable decision filenames.
Material decisions about domain boundaries, authorization, persistence, publication, concurrency, cache isolation, parity scope, or deployment require an independent architecture challenge and documented alternatives before implementation.
Do not use completed increment documents as the source for current behavior; use them only for history or archaeology.
Before using unfamiliar Spring Boot, Spring Modulith, Spring AI, Gradle, React, Vite, Tailwind, TypeScript, Next.js, or Fumadocs APIs, consult current official documentation, Context7, and the relevant verification skill.
Readdocs/guidelines/agent-safety.mdbefore retrieval, AI, MCP, permission, upload, graph, or export work; never commit secrets or customer data.
Keepddl-auto=validateand pair every persisted-model change with a Flyway migration.
Use the testing harness; a terminating clean test is the JVM context gate, andbootRunis not verification.
Files:
apps/worker/src/main/resources/application.ymlinfrastructure/deployment/production.env.exampleapps/api/src/test/java/com/orgmemory/api/security/ProductionAiGatewayConfigurationBindingTests.javaARCHITECTURE.mdinfrastructure/deployment/compose.production.yamlapps/api/src/main/resources/application.ymlapps/worker/src/test/java/com/orgmemory/worker/ProductionAiGatewayConfigurationBindingTests.java
**/*.java
📄 CodeRabbit inference engine (AGENTS.md)
Apply IDE inspection only to edited backend Java files.
Files:
apps/api/src/test/java/com/orgmemory/api/security/ProductionAiGatewayConfigurationBindingTests.javaapps/worker/src/test/java/com/orgmemory/worker/ProductionAiGatewayConfigurationBindingTests.java
🧠 Learnings (1)
📚 Learning: 2026-07-27T14:53:53.633Z
Learnt from: kl3inIT
Repo: kl3inIT/OrgMemory PR: 92
File: infrastructure/deployment/compose.production.yaml:304-310
Timestamp: 2026-07-27T14:53:53.633Z
Learning: For OrgMemory’s Spring Boot SCIM configuration, the `application.yml`/`application-prod.yml` map `orgmemory.security.scim.*` properties via `${ORGMEMORY_SCIM_*}` placeholders. Therefore, in deployment Compose files and related environment/CI templates, set environment variables using the `ORGMEMORY_SCIM_*` names (e.g., `ORGMEMORY_SCIM_VERIFIER_KEY`) rather than “relaxed-binding-derived” names such as `ORGMEMORY_SECURITY_SCIM_*`. This is required to ensure Spring resolves the intended SCIM configuration properties.
Applied to files:
infrastructure/deployment/compose.production.yaml
🪛 dotenv-linter (4.0.0)
.env.example
[warning] 13-13: [UnorderedKey] The ORGMEMORY_ASSISTANT_OPENAI_REASONING_EFFORT key should go before the ORGMEMORY_ASSISTANT_RETRIEVAL_ENGINE key
(UnorderedKey)
🔇 Additional comments (7)
apps/api/src/main/resources/application.yml (1)
106-106: LGTM!apps/worker/src/main/resources/application.yml (1)
81-81: LGTM!infrastructure/deployment/compose.production.yaml (1)
68-68: LGTM!infrastructure/deployment/production.env.example (1)
78-78: LGTM!apps/api/src/test/java/com/orgmemory/api/security/ProductionAiGatewayConfigurationBindingTests.java (1)
50-75: LGTM!apps/worker/src/test/java/com/orgmemory/worker/ProductionAiGatewayConfigurationBindingTests.java (1)
48-73: LGTM!ARCHITECTURE.md (1)
406-407: LGTM!
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Summary
ORGMEMORY_ASSISTANT_OPENAI_REASONING_EFFORTinto the Assistant route in both API and workernonewhile leaving general development configuration empty/capability-off/v1/chat/completionsunchangedProduction incident
The first post-deploy 50-case sweep failed every Assistant turn with:
PR #304 added fixed Assistant function tools, but the deployment route had no explicit reasoning effort. The gateway default therefore made tools plus implicit effort invalid.
Temporary mitigation to remove after deployment verification
Production currently has an organization
ASSISTANT_CHAToverride pointing to the OPENAI-presetopenai-chat-noeffortprofile92d0993f-d53a-442c-8576-90868696628awithopenAiReasoningEffort=NONE. After this PR is deployed and the default route is verified, an organization administrator must clear the route first and then disable the now-unused profile.List only; do not run before the deployment is verified:
Sweep evidence
The owner-approved final sweep is recorded in
docs/increments/completed/2026-08-05-assistant-answer-behavior/official-eval-report-2026-08-06.jsonandresults.md:noneoverrideVerification
./gradlew.bat --no-daemon clean test(clean_test_exit=0)ProductionAiGatewayConfigurationBindingTests: 3 tests each, 0 failures/errorsconfig --quietand rendered API/worker Assistant effort:noneSummary by CodeRabbit
New Features
Tests
Documentation