docs: complete config helper inventory (#3261)

This commit is contained in:
安正超
2026-06-07 22:02:21 +08:00
committed by GitHub
parent dd0ef1f766
commit e5b2bcc088
2 changed files with 15 additions and 8 deletions
@@ -19,9 +19,11 @@ In scope:
- `rustfs_ecstore::config::com::{read_config_without_migrate, save_server_config}`
- Consumers that persist, clone, inspect, mutate, or pass these types across
runtime boundaries.
- Adjacent users of `rustfs_ecstore::config::com::{read_config, save_config,
delete_config}` are listed separately because moving `com.rs` would affect
them even when they do not consume `Config`, `KV`, or `KVS`.
- Selected adjacent users of `rustfs_ecstore::config::com::{read_config,
save_config, delete_config}` and related helper variants are listed separately
when they appear outside the core `Config`, `KV`, and `KVS` consumer map.
This is not a complete `com.rs` move inventory; any future `com.rs` move must
first inventory ECStore-internal persistence helper users too.
Out of scope:
@@ -123,6 +125,8 @@ behind narrower contracts.
| `rustfs/src/admin/handlers/kms_dynamic.rs` | Uses generic `read_config` and `save_config` for dynamic KMS config objects. |
| `rustfs/src/admin/handlers/site_replication.rs` | Uses generic `read_config`, `save_config`, and `delete_config` for site-replication state objects. |
| `rustfs/src/admin/service/site_replication.rs` | Uses generic `read_config` and `save_config` for site-replication state normalization. |
| `rustfs/src/server/module_switch.rs` | Uses generic `read_config` and `save_config` for module-switch config objects. |
| `crates/iam/src/store/object.rs` | Uses generic `read_config_no_lock`, `read_config_with_metadata`, `save_config`, `save_config_with_opts`, and `delete_config` helper variants for IAM object-store persistence paths. |
| `crates/scanner/src/{scanner,data_usage_define}.rs` | Uses generic `read_config` and `save_config` for scanner metadata and cache persistence paths. |
### Runtime Target, Notify, And Audit Crates
+8 -5
View File
@@ -5,13 +5,14 @@ Status values: `[ ]` not started, `[~]` in progress, `[x]` complete, `[!]` block
## Current Context
- Issue: [`rustfs/backlog#660`](https://github.com/rustfs/backlog/issues/660)
- Branch: `overtrue/arch-ecstore-config-inventory`
- Baseline: `upstream/main` at `241e45d3b040684e5d217d2dd95f84c72f1de316`
- Branch: `overtrue/arch-config-helper-inventory-followup`
- Baseline: `upstream/main` at `3c71d5ef1c63bec63780d48caa2a9fe880ea0c64`
- PR type for this branch: `docs-only`
- Runtime behavior changes: none
- Rust code changes: none
- Docs changes: add the ECStore config consumer inventory for later config-model
contract, pure-move, and global-state migration work.
- Docs changes: add PR-review-raised adjacent config-object helper users for
module-switch and IAM persistence without claiming a complete `com.rs` move
inventory.
## Phase 0 Tasks
@@ -67,7 +68,7 @@ Status values: `[ ]` not started, `[~]` in progress, `[x]` complete, `[!]` block
| Expert | Status | Notes |
|---|---|---|
| Quality/architecture | pass | Re-review confirmed dependency/call direction arrows, scanner global readers, adjacent scanner persistence helpers, notify config-manager persistence, narrowed test wording, and `Config model contract` wording are source-backed |
| Quality/architecture | pass | Re-review confirmed dependency/call direction arrows, scanner global readers, selected adjacent scanner/module-switch/IAM persistence helpers, notify config-manager persistence, narrowed test wording, and `Config model contract` wording are source-backed |
| Migration preservation | pass | Confirmed this branch is docs-only, aligned with `rustfs/backlog#660`, and does not touch runtime logic, storage hot paths, global state implementation, compatibility code, scripts, or crate boundaries |
| Testing/verification | pass | Confirmed docs-only verification is sufficient after wording was narrowed and the final staged diff check covers all docs |
@@ -98,3 +99,5 @@ Final pre-push after staging all docs:
`RUSTFS_COMPAT_TODO(<task-id>)` marker and cleanup-register entry.
- The next config-model PR must preserve the current tuple-struct shapes and
persistence behavior before introducing narrower provider contracts.
- Do not move `config::com` until a dedicated helper-user inventory covers
ECStore-internal persistence paths as well as adjacent non-model users.