Repository navigation
Refactor/account store provider - #5933
Merged
qin-ctx merged 9 commits intoOct 12, 2026
Merged
Conversation
qin-ctx
requested changes
Oct 12, 2026
qin-ctx
left a comment
Collaborator
There was a problem hiding this comment.
AccountStore 抽象能收敛现有存储职责,重构方向合理。当前需要先解决 Studio 将不可读的哈希密钥标为可绑定的问题;另有两处注册路径的额外存储读取,详见 inline comments。
runyunzhou
force-pushed
the
refactor/account-store-provider
branch
from
October 12, 2026 11:23
8bd5653 to
19a71d3
Compare
qin-ctx
requested changes
Oct 12, 2026
qin-ctx
left a comment
Collaborator
There was a problem hiding this comment.
当前 Head 存在已复现的自定义认证插件启动回归,修复前暂不建议合入,详见行级评论。
runyunzhou
force-pushed
the
refactor/account-store-provider
branch
from
October 12, 2026 11:59
19a71d3 to
0c2fe5e
Compare
qin-ctx
approved these changes
Oct 12, 2026
runyunzhou
force-pushed
the
refactor/account-store-provider
branch
from
October 12, 2026 13:27
0c2fe5e to
367fabf
Compare
runyunzhou
added a commit
to runyunzhou/OpenViking
that referenced
this pull request
Oct 12, 2026
…providers Main's volcengine#5933 added the abstract AccountStore.create_account to support trusted keyless identity provisioning. Implement it in the MySQL and Redis/MySQL providers so they remain instantiable and preserve the file provider's keyless-admin creation semantics.
12 of 21 tasks
yenchang265-afk
pushed a commit
to yenchang265-afk/OpenViking
that referenced
this pull request
Oct 13, 2026
…at startup Upstream's account store refactor (volcengine#5933) replaced the synchronous APIKeyManager.get_accounts() with async list_accounts(). The fork's startup hook (#31) still called get_accounts() synchronously while the lifespan started, so any server with an API key manager (api_key or trusted mode) failed to start. Move the account lookup into the background install task, await list_accounts(), and log instead of failing when the account store cannot be read, so Skill installation never blocks startup. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Uj7NbV51xgmi6dwwyZq2AW
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
本 PR 将现有账号、用户、用户组和 API Key 持久化逻辑重构为可插拔的异步
AccountStore架构。现有 AGFS 文件存储实现被抽离为
FileStore,APIKeyManager收敛为与具体存储实现无关的协调层。认证、OAuth、管理接口、删除流程和历史数据迁移等调用链同步迁移到新的异步契约,同时保持现有文件路径、认证行为和默认配置兼容。本 PR 仅包含 Account Store 基础抽象和 File provider,不包含 MySQL、Redis 或 Redis + MySQL provider 实现。
Human Involvement
Related Issue
N/A
Type of Change
Changes Made
AccountStore契约及共享数据模型,统一账号、用户、用户组、凭证、删除状态和认证相关存储操作。FileStore,保留既有文件路径、加密、Argon2 哈希、删除 fence 和凭证轮换语义。APIKeyManager收敛为 provider 无关的异步协调层,并新增集中式 Store 装配入口。Testing
验证结果:
pytest tests/server/test_account_services.py tests/server/test_store_assembly.py13 passedgit diff --check main...refactor/account-store-providermain...refactor/account-store-provider的完整差异执行代码审查,未发现 P0/P1 级别问题。Checklist
Screenshots (if applicable)
N/A
Additional Notes