Skip to content

feat(core): add Inception model provider - #6182

Merged
me2seeks merged 1 commit into
apache:mainfrom
me2seeks:feat/inception-provider
Oct 20, 2026
Merged

me2seeks merged 1 commit into
apache:mainfrom
me2seeks:feat/inception-provider

Conversation

@me2seeks

@me2seeks me2seeks commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Add Inception to the provider catalog with API-key authentication and the existing OpenAI-compatible Chat Completions adapter. Users can select Mercury 3, Mercury 2.5, or Mercury 2, discover account chat models, and choose low/medium/high reasoning effort.

Use /v1/chat/completions/models so Edit and Decide models do not enter the chat picker. Preserve Inception's advertised output limits and tool/structured-output features, and add Simplified Chinese, Traditional Chinese, and English catalog copy.

Model capacities come from Inception models; effort controls follow reasoning efforts. Inception is absent from the bundled models.dev snapshot, so these bootstrap facts live in the static metadata layer. The provider's instant effort is not exposed because Maka has no corresponding thinking level; leaving effort unset preserves the provider default.

Verification

  • Passed npm run build, npm run typecheck, npm run lint, npm run format:check, and npm run check:model-metadata.
  • Passed npx knip --workspace apps/desktop and npx knip --workspace packages/ui.
  • Passed 237 core/runtime tests across provider catalog, metadata, discovery, thinking serialization, and the provider conformance matrix (including streamed tool loops).
  • Passed 39 Desktop settings-copy and provider connection tests.
  • Built-output readback: inCatalog: true, fallback models mercury-3, mercury-2.5, mercury-2, thinking choices low, medium, high; all three catalog locales resolve to Inception.
  • HTTP fixtures verify the exact chat-model discovery endpoint, Bearer authentication, capacity/features, and outgoing reasoning_effort. The full repository test suite was not rerun locally.
  • Live Inception API smoke test passed on this PR's provider commit (2f48a148c0) on 2026-10-20 using the built Maka discovery/model factory and AI SDK: 6 checks, 8 HTTP requests, all HTTP 200.
    • Chat-only discovery returned mercury-2, mercury-2.5, and mercury-3, with context/output limits matching the bootstrap metadata.
    • Each model accepted reasoning_effort: high and recalled a marker from supplied conversation history; token usage, including reasoning tokens, was decoded.
    • Mercury 3 streamed a real tool-call loop with reasoning_effort: low: add_numbers(19, 23) executed locally once, its result was sent back, and the second model step answered 42; stream usage was decoded.
    • Mercury 3 completed two consecutive real requests: the first with effort omitted returned OK; the second reused the first response messages with reasoning_effort: medium and recalled ORCHID-842.
    • Credentials remained local and were not included in logs or this PR.

Updated base and regression coverage

Rebased onto main after PR #6183 merged as a78901e; the Kimi K3 none-effort behavior fix is now in this PR's base. On the rebased head, npm run build:test passed, and 171 focused core, runtime, and Runtime Host tests passed, including the Host composition tests that refresh models.dev metadata.

AI use

  • No generative tool made a substantive contribution
  • Generative tooling made a substantive contribution

Tool(s) and scope: Codex implemented the provider registration, metadata, localized copy, discovery fields, and regression tests, and ran the checks above. The commit includes Generated-by: Codex.

Checklist

  • Tests cover the change and fail without it
  • Lint, format, typecheck and the affected suites pass locally

Does this PR entail a change in behavior?

  • Yes — described under Summary above
  • No

@me2seeks
me2seeks requested a review from Astro-Han October 20, 2026 02:32

@Astro-Han Astro-Han left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Automated review notice: This comment was posted by an automated review agent. It is not an independent human review and does not replace one.

I reviewed all eight changed files at 2f48a148c025a18b2b8da301a8739a18b82bd6ef. The provider registry connects API-key onboarding, the existing OpenAI-compatible Chat adapter and chat-only model discovery; localized settings copy covers all three locales. Discovery now reads the provider's output-limit and supported-feature fields (packages/core/src/provider-registry.ts:859, packages/core/src/model-metadata.ts:533, packages/runtime/src/model-fetcher.ts:785).

No new P0–P2 findings. The three fallback capacities match the official model table: Mercury 3 has a 1,000,000-token context and 131,072 output limit; Mercury 2.5 has 260,000/65,536; Mercury 2 has 128,000/50,000. Text-only, tool-calling and structured-output capability flags agree with that table. The exposed low/medium/high efforts match the reasoning controls; omitting effort preserves the provider default, and this change does not invent an off switch. The configured base URL, Bearer authentication and /v1/chat/completions/models discovery path agree with the chat-model API.

Pricing remains unavailable for direct inception:* calls unless the user supplies an override; current request telemetry correctly leaves the amount unknown. For comparison, the official model table currently lists input/output/cache-read rates per million tokens of $0.10/$0.35/$0.01 for Mercury 3 at launch, $0.20/$0.75/$0.02 for Mercury 2.5, and $0.25/$0.75/$0.025 for Mercury 2. The model-list examples disagree on some prices, including zeroes for Mercury 3, so they should not be treated as verified billing rates. This PR does not hard-code those conflicting prices.

Validation passed: the normal clean root test build, all workspace type checks, production renderer build, 275 Core/Runtime tests, 63 Desktop tests, metadata synchronization, lint/format, ASF headers, 168 architecture tests plus the check against main, surface inventory and locale hygiene. Eighteen additional controlled requests used the actual SDK across all three models: default/off/low/medium/high serialization, JSON mode, streamed reasoning and tool calls. The official OpenAPI model-list example passed through actual discovery, and onboarding/default selection plus all three locale names resolved correctly. Formal OpenAPI usage fields preserved cache and reasoning counts. Its older example uses a different usage shape, so live behavior remains unverified; the official schema is the basis of these checks.

No live API key, paid-provider test or billing verification was used. The head is unchanged and open. Epoch 225 is unchanged and the protocol guard passes. A trial merge with main b0ed5707ff3dc645c66253ed93e50936e3f9d45d is conflict-free, but that merged tree was not tested. Exact-head CI run 39359449737 is still queued, so local validation must not be described as a successful CI result.

@github-actions github-actions Bot added the effort/M Under 500 readable lines label Oct 20, 2026
@me2seeks
me2seeks requested a review from M4n5ter October 20, 2026 03:03
@me2seeks
me2seeks force-pushed the feat/inception-provider branch from 9eef23d to 2f48a14 Compare October 20, 2026 03:39
@me2seeks
me2seeks force-pushed the feat/inception-provider branch from 2f48a14 to a3347fe Compare October 20, 2026 05:35
@me2seeks
me2seeks merged commit 9afda61 into apache:main Oct 20, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

effort/M Under 500 readable lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants