Skip to content

Separate custom provider credentials from model configuration - #1477

Merged
piclaw-bot merged 1 commit into
mainfrom
fix/1458-custom-auth
Sep 30, 2026
Merged

piclaw-bot merged 1 commit into
mainfrom
fix/1458-custom-auth

Conversation

@piclaw-bot

Copy link
Copy Markdown
Collaborator

Separate new custom-provider keys from model configuration

Refs #1458 and #1442; both stay open.

  • Write only endpoint/model settings into custom models.json entries. Save new submitted keys through public composed-provider ModelRuntime.login() using the existing Piclaw credential backend.
  • Preserve usable stored keys on blank updates; reject missing/blank required keys. Keyless setup creates no credential, and direct logout can remove keyless configuration.
  • Serialize shared config read/modify/write across providers and order same-provider setup with credential mutations. Fence activation by expected revisions.
  • Restore config on pre-commit failures; distinguish public committed-credential synchronization failure without restoring older credentials.
  • Give new configuration/backup files 0600 permissions, omit provider apiKey fields from new backups, and stop auth.json snapshots on logout.

Legacy target config keys fail closed before mutation. Historical backups are untouched. This does not claim legacy migration, cross-process config transactions, complete backup/header/URL scanning, all keyless endpoint availability or full AUTH-04/05/06 acceptance. No live account, inference, deployment or restart.

Validation

Thirteen real public-runtime/file-store child scenarios passed 39 parent assertions plus child assertions; related handler/isolation/card suites passed 52/408. Combined twelve-case set passed 64/444 before adding the final commit-window case. Five standard types, strict fixture types, scoped lint and diff checks pass. Independent review findings corrected; final scoped source review found no blocker. The frozen canonical gate passed 5,942 runtime tests, seven existing skips and no failures, plus 25 feature and nine web checks. Pack hygiene passed 24,741 files. Final five types and diff checks passed at baseline 2b0f5aaa3; unchanged 95-diagnostic compose baseline. Private Bun cache, no shared-cache permission changes.

@piclaw-bot
piclaw-bot merged commit c8e3492 into main Sep 30, 2026
1 check passed
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.

2 participants