- Add `oauth-settings` configuration to override model capabilities such as `max-context-length`
- Implement sanitization, YAML preservation, and live reload diff detection for OAuth settings
- Apply OAuth model settings during model resolution and Codex model list responses
Closes: #6099
- Generate UUIDv7 request IDs using crypto random source
- Add `ShortRequestID` helper to truncate IDs to 8 trailing characters in log output and filenames
- Update management log handlers to match log files using short request IDs
Use Home credential options as authoritative model capability
configuration for compat handling and prompt cache behavior.
Expose quota provider operations through the public plugin host API.
- Extract `plan_type` from JWT claims and default missing values to `free`
- Include `plan_type` in token data, token storage, auth attributes, and file synthesis
- Ensure `plan_type` is maintained across token refresh flows
- Preserve empty map allocations during auth object cloning
- Rewrite `tool.name` of mid-conversation `tool_addition`/`tool_removal` blocks with a `tool_reference` to the same MCP alias as `tools[]`
- Rewrite `tool.definition.name` of inline `tool_definition` additions that redefine a declared custom tool
- Apply the same rewrite in the batched-edits and legacy remap paths
- Prevent upstream `references unknown tool` 400s for cloaked requests using mid-conversation tool changes
Closes: #6174
- Include `bond` interface prefix in physical LAN interface detection
- Suppress repetitive discovery service spec build failure warnings until error message or configuration changes
- Preserve thought signatures across function calls, thought steps, and trailing empty text parts
- Track pending signatures and model turn context when constructing Gemini request contents
- Support extracting thought steps from response parts with thought signatures during response conversion
Closes: #6150
- Update namespace qualification check to require an exact match or explicit delimiter prefix
- Prevent tools sharing a name prefix with a namespace from skipping qualification
Closes: #6160
- Parse and pass `quality` in xAI image generation and edit requests
- Extract `quality` field from JSON payloads and multipart form data
- Include `quality` in the upstream xAI image request payload when provided
Closes: #6157
- Add `SanitizeMetaWebSearchTools` to remove `search_content_types` from `web_search` tool definitions
- Support sanitizing nested tools within `namespace` tool definitions
- Apply web search tool sanitization during Meta request preparation
Closes: #6156
- Emit warnings when unrecognized configuration sections are commented out during v8 migration
- Mirror migration warnings directly to the console when file logging is active
- Provide a hook in the configuration package to customize migration warning dispatching
Closes: #6162
- Parse `disabled` field from auth file metadata when listing and registering auth files
- Update auth entry status to disabled when `disabled` flag is set to true
- Generalize boolean parsing helper to support common boolean metadata fields
Closes: #6153
- Retain obsolete and unknown root sections as comments instead of dropping them during v8 migration
- Defer removal of deprecated legacy blocks so they can be preserved as comments during layout normalization
- Add `base-url` to `remote-management` configuration and `-management-base-url` command-line flag
- Resolve management API base URL with priority given to CLI flag over config file
- Update TUI client and app initialization to support custom remote HTTP/HTTPS endpoints
- Include `remote-management.base-url` in configuration diff watcher checks
Closes: #6144
- Use `ExtractSummaryConfig` to parse summary configuration from OpenAI response payloads
- Default to enabled auto summaries when reasoning effort is set without explicit summary visibility
- Apply the resolved summary configuration directly to Antigravity translations
Closes: #6143
- Implement `splitDevinUID` for consistent UID splitting and effort extraction.
- Update model aggregation to handle thinking levels and merge variants.
- Refine display name cleaning logic to remove redundant suffixes.
- Adjust Devin catalog integration to exclude exposed thinking variants.
- Normalize and sort thinking levels with an extended rank scheme.
Closes: #6141
- Parse and normalize `service_tier` from incoming OpenAI chat completion requests
- Map `fast` and `priority` to `priority`, and preserve `ultrafast`
- Omit absent, default, or unsupported service tier values
Closes: #6138
- Add reject flags and reason fields to `SchedulerPickResponse` with snake_case JSON unmarshaling support
- Terminate candidate selection with an auth error when scheduler rejection is flagged
- Normalize rejection response with default error code and reason in the plugin host
Closes: #6130
- Split function response parts from mixed user turns in Gemini payloads
- Hoist function response turns ahead of intervening text reminders following model calls
- Apply function response turn splitting and adjacent user turn merging for Claude models
Closes: #6129
- Use Codex usage config extraction to log the effective thinking effort
- Include baseline level in logged fields when the top-level mode is configured
- Guard config extraction and logging behind a debug log level check
- Handle unchanged native Responses payloads before user-defined model processing
- Extract and log original and processed thinking configuration when present
- Return payload unmodified without rewriting or re-validating
- Attach resolved execution model info during execution and token counting even when restoring execution models
- Propagate configuration update support to resolved Home dispatch model info
- Track modifications to configuration updates across plugin normalizers in the translation pipeline
- Mark configuration update support for eligible Codex models in the registry
- Permanently unschedule credentials that are disabled and encounter invalid_grant to avoid high-frequency refresh loops.
- Preserve expected token refresh behavior for normal disabled credentials without invalid_grant failures.
- Apply exponential backoff starting at 1m up to 30m when enabled credentials encounter invalid_grant to allow CAPTCHA/checkpoint recovery.
- Add regression tests covering disabled invalid_grant unscheduling and exponential backoff retry cycles.
- Remove direct Messages passthrough bypass for unconfirmed OAuth credentials
- Ensure standard cache control handling and CLI fingerprinting apply upstream
- Support detection for Claude Code 2.1.280 title helper payload shape
Closes: #6120
- Permanently unschedule credentials that are disabled and encounter invalid_grant to avoid high-frequency refresh loops.
- Preserve expected token refresh behavior for normal disabled credentials without invalid_grant failures.
- Apply exponential backoff starting at 1m up to 30m when enabled credentials encounter invalid_grant to allow CAPTCHA/checkpoint recovery.
- Add regression tests covering disabled invalid_grant unscheduling and exponential backoff retry cycles.
- Merge existing auth attributes and preserve file path metadata across plugin refreshes
- Avoid overwriting existing source and path attributes during auth data conversion
- Retry file stat during atomic replace to prevent premature removal of known auth files
Closes: #6119
- Add static and builtin model definition for `devin/swe-1-6-slow`
- Inject builtin models into Devin catalog retrieval, lookup, and dynamic updates
Closes: #6111
- Fix malformed `X-Client-Id` header and ensure it is applied to upstream requests
- Preserve subscription metadata during OAuth token creation and token refreshes
- Support dynamic retry-after for 404 responses and shorten default Meta 404 cooldown
Closes: #6117
- Introduce `sessionObject` to index top-level JSON fields once for session key lookups
- Prevent repeated rescans of large message payloads when probing missing candidate keys
- Support duplicate top-level keys when resolving nested paths
Closes: #6114
- Share request payload reference during session identity enrichment when original request is unset
- Avoid cloning request payload when interceptors do not mutate the body
- Pass request body directly to handler and conductor interceptors
Closes: #6101
- Postpone request context cancellation until after reading and closing the response body
- Ensure response body is closed and context is canceled across all error paths
Closes: #6095
- Switch HTTP server stop from graceful shutdown to immediate close to prevent hanging on active requests
- Guard listeners and configuration access with dedicated mutexes
- Instantiate service shutdown context with a fresh timeout deadline upon exit
Closes: #6094
- Map Devin grok models to xai owned_by in catalog and fetch_devin_models tool
- Update Antigravity fetched capability test to reflect gemini-pro-agent native web search support
- Fix formatting in test fixtures