unsloth/studio/backend/routes
Nilay 52609fb890
Studio: reset-password rotates the credential in place instead of deleting auth.db (#7573)
* reset-password: rotate the admin credential in place instead of deleting auth.db

* reset-password: fix the CI callers and error handling for the in-place rotation

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* reset-password: narrow the CI change to the jobs that read .bootstrap_password

* reset-password: stop over-claiming what the reset revokes and when it takes effect

* auth: bind token issuance to the credential version that was verified

* auth: bind credential-creating writes to the version the request authenticated with

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* auth: bind the change-password and workflow-key writes to their own credential version

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* auth: read the credential version inside the transaction that validated it

* data-recipe: answer 401 when a reset revokes the credential mid job start

* Fix lint blocker and Windows path assertion for PR #7573

Drop the now-unused validate_api_key import from studio/backend/auth/authentication.py.
Every call site moved to validate_api_key_with_credential, so the Source lint job's
import-hoist gate flagged it as a blocker. The wrapper itself stays in storage.py;
test_api_key_expiry.py still exercises it.

Make test_run_reexec_forwards_resolved_frontend_on_public_launch compare against
str(Path(...)) instead of a POSIX literal. _find_frontend_dist returns a Path, so on
Windows the forwarded value is \fake\studio\frontend\dist and the assertion could
never pass there. Pre-existing, surfaced by running unsloth_cli/tests on Windows.

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Daniel Han <danielhanchen@gmail.com>
2026-07-29 01:40:12 -07:00
..
data_recipe Studio: reset-password rotates the credential in place instead of deleting auth.db (#7573) 2026-07-29 01:40:12 -07:00
.gitkeep root studio folder 2026-02-02 09:13:49 +00:00
__init__.py Studio: add Deep Research (#7219) 2026-07-26 23:36:02 -07:00
auth.py Studio: reset-password rotates the credential in place instead of deleting auth.db (#7573) 2026-07-29 01:40:12 -07:00
chat_history.py feat(studio): adjustable llama-server parallel slots from the web UI (#7447) 2026-07-28 18:03:28 -07:00
datasets.py Studio: add configurable model download location (#7274) 2026-07-23 01:34:38 -07:00
export.py Studio: offer the latest transformers release for brand-new architectures (#7056) 2026-07-15 05:25:26 -07:00
inference.py Studio: read model text as utf-8 so umlauts survive on Windows (#7467) 2026-07-28 21:27:27 -07:00
llama.py Studio: add local speech-to-text dictation engine (#7095) 2026-07-23 01:39:03 -07:00
mcp_servers.py Replace standalone Studio wording with Unsloth (#7221) 2026-07-19 00:47:04 -07:00
models.py Studio: read model text as utf-8 so umlauts survive on Windows (#7467) 2026-07-28 21:27:27 -07:00
preview.py Studio: opt-in OpenAI /v1 model auto-switch and idle keep-warm (#6392) 2026-07-01 06:42:23 -07:00
prompts.py Studio: clean-room compact RAG (knowledge bases, hybrid search, fast indexing) (#5910) 2026-06-09 21:17:04 -07:00
providers.py fix(studio): persist connection model selections for remote clients (#7298) 2026-07-23 19:11:50 -07:00
rag.py Add drag and drop sources to the create project dialog (#7441) 2026-07-25 23:54:48 -07:00
research_runs.py Studio: add Deep Research (#7219) 2026-07-26 23:36:02 -07:00
settings.py Studio: fix the "No model loaded" error, and optionally auto-download a model named in an API request (#7454) 2026-07-27 05:02:06 -07:00
training.py feat(studio): add DoRA support to studio (#7315) 2026-07-24 03:24:16 -07:00
training_history.py Studio: require signed capability tokens for /p preview links (#6666) 2026-06-25 21:40:48 -07:00
training_vram.py Add Intel XPU support to Unsloth Studio (#4724) 2026-07-24 02:22:07 -03:00
whisper.py Studio: add local speech-to-text dictation engine (#7095) 2026-07-23 01:39:03 -07:00