Skip to content

feat: support configurable model names and restore Skill readback - #64

Closed
RerrentLinden wants to merge 2 commits into
SuperJJ007:mainfrom
RerrentLinden:agent/configurable-model-display-names
Closed

feat: support configurable model names and restore Skill readback#64
RerrentLinden wants to merge 2 commits into
SuperJJ007:mainfrom
RerrentLinden:agent/configurable-model-display-names

Conversation

@RerrentLinden

@RerrentLinden RerrentLinden commented Jul 20, 2026

Copy link
Copy Markdown

Summary

  • add optional display-name inputs for the default, quality, fast, and Fable model routes
  • keep user-facing display_name values separate from exact upstream model IDs while preserving selectors and role bindings
  • authenticate the Science Skill control plane through the current browser URL nonce exchange
  • retain the legacy POST /api/auth/nonce endpoint as an explicit compatibility path when the current exchange does not yield an authenticated session
  • cover display-name persistence, current and legacy nonce flows, CSRF setup, binding, and readback with regression tests

Root cause

Provider model IDs must remain exact for routing, but slug-like IDs can be filtered when reused as Science-facing display names. The configuration UI previously could not edit display_name independently.

Separately, current Science consumes its control-plane nonce from GET /?nonce=... and returns the session cookies there. CSSwitch still called only the older POST /api/auth/nonce endpoint, which returned 401 invalid bearer token and left the Skill page at “binding readback failed.”

Scope

This PR contains only the configurable model display-name change and the Science nonce/readback compatibility fix. The experimental hybrid Connector/model work is intentionally excluded.

Validation

  • cargo test --manifest-path desktop/skill-package/Cargo.toml science::tests::: 12 passed
  • cargo test --manifest-path desktop/skill-package/Cargo.toml: 57 passed, 4 ignored
  • cargo clippy --manifest-path desktop/skill-package/Cargo.toml --all-targets -- -D warnings
  • bash test/run_all.sh --require-release-ready (Python 3.9.6 via a temporary PATH shim): all five layers pass; release-ready green: YES
  • npm run tauri build -- --bundles app
  • installed App UI smoke check: display names remain separate from upstream IDs; 30 Skills discovered and 29 confirmed attached with “OPERON live readback”

@RerrentLinden
RerrentLinden marked this pull request as ready for review July 20, 2026 10:10
@RerrentLinden RerrentLinden changed the title feat: support configurable model display names feat: support configurable model names and restore Skill readback Jul 20, 2026
@RerrentLinden
RerrentLinden marked this pull request as draft July 20, 2026 10:26
@RerrentLinden
RerrentLinden marked this pull request as ready for review July 20, 2026 10:27
@RerrentLinden
RerrentLinden deleted the agent/configurable-model-display-names branch July 20, 2026 15:59
@RerrentLinden
RerrentLinden restored the agent/configurable-model-display-names branch July 20, 2026 17:39
@RerrentLinden
RerrentLinden deleted the agent/configurable-model-display-names branch July 20, 2026 17:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant