安正超
dd50359161
refactor(storage): narrow table catalog bounds ( #3350 )
2026-06-11 14:32:28 +08:00
安正超
2ead90d31b
fix(security): add authorization check to ListRemoteTargetHandler (GHSA-796f-j7xp-hwf4) ( #3346 )
...
fix(security): add authorization check to ListRemoteTargetHandler
ListRemoteTargetHandler only verified that request credentials existed
but did not check whether the caller has replication or administrator
permissions. This allowed any authenticated user to list remote
replication target configuration, potentially leaking remote target
credentials (accessKey, secretKey, sessionToken).
Add validate_replication_admin_request() call with
GetBucketTargetAction, consistent with the other replication admin
handlers that already perform this check.
Fixes: GHSA-796f-j7xp-hwf4
Co-authored-by: houseme <housemecn@gmail.com >
2026-06-11 05:50:14 +00:00
安正超
d60deba9b6
fix(security): add IAM authorization to FTP read/metadata/cwd handlers (GHSA-3g29-xff2-92vp) ( #3347 )
...
fix(security): add IAM authorization to FTP read/metadata/cwd handlers
The FTP frontend's get() (RETR), metadata() (SIZE/MDTM), and cwd()
(CWD) handlers dispatched directly to the storage backend without
calling authorize_operation(). This allowed any authenticated FTP user,
including those with explicit Deny policies, to read arbitrary objects
and probe bucket existence regardless of IAM policy.
Add authorize_operation() calls matching the pattern used by the
write-path handlers (put, del, list, rmd) and the WebDAV driver:
- get(): S3Action::GetObject
- metadata() for files: S3Action::HeadObject
- metadata() for directories: S3Action::HeadBucket
- cwd(): S3Action::HeadBucket
Fixes: GHSA-3g29-xff2-92vp
Co-authored-by: houseme <housemecn@gmail.com >
2026-06-11 05:48:53 +00:00
安正超
d4ee44f49f
refactor(scanner): narrow cache storage bounds ( #3348 )
2026-06-11 13:52:35 +08:00
安正超
2f7cc7cb9e
refactor(storage): narrow resync metadata bounds ( #3345 )
2026-06-11 04:41:15 +00:00
houseme
ee96e194a3
build(deps): bump s3s for header parsing fix ( #3344 )
2026-06-11 04:28:36 +00:00
houseme
a49c6b4c2e
fix(logging): clarify recovery and metacache warn messages ( #3341 )
...
* fix(logging): clarify recovery and metacache warn messages
Clarify cached gRPC connection eviction messages so they describe automatic reconnection instead of implying a persistent cluster fault.
Retitle metacache resolution logs to remove the misleading decommission_pool prefix and demote routine reconciliation traces to debug while preserving actionable warning paths.
* fix(logging): avoid overpromising reconnect success
2026-06-11 04:19:22 +00:00
Henry Guo
7191a3abae
docs(scanner): document runtime scanner controls ( #3339 )
...
* docs(scanner): document runtime scanner controls
* docs(scanner): split English and Chinese README
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
Co-authored-by: majinghe <42570491+majinghe@users.noreply.github.com >
2026-06-11 12:04:34 +08:00
安正超
686068d8bd
refactor(storage): narrow metadata bounds ( #3343 )
2026-06-11 12:04:02 +08:00
安正超
6b86e3875c
refactor(storage): remove old admin surfaces ( #3340 )
2026-06-11 11:28:09 +08:00
安正超
87968275a7
refactor(storage): route maintenance inventory reads ( #3337 )
2026-06-11 10:32:48 +08:00
安正超
f325b9f714
refactor(ecstore): route admin read internals ( #3336 )
2026-06-11 08:43:42 +08:00
安正超
94c53af264
refactor(storage): use admin API for observability reads ( #3335 )
2026-06-11 08:13:15 +08:00
安正超
8ae0cad667
refactor(admin): use storage admin reads ( #3334 )
2026-06-11 07:48:38 +08:00
安正超
b48d7b1fa5
refactor(admin): use storage admin info ( #3333 )
2026-06-11 07:12:35 +08:00
安正超
8a90bda16a
refactor(admin): use storage admin drive counts ( #3332 )
2026-06-11 06:36:18 +08:00
安正超
4b1714438e
feat(storage-api): bind ecstore admin contract ( #3331 )
2026-06-11 05:49:14 +08:00
Henry Guo
474fab5097
fix(table-catalog): validate committed metadata identity ( #3327 )
...
* fix(table-catalog): validate committed metadata identity
* fix(table-catalog): preserve legacy metadata identity commits
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-10 16:49:06 +00:00
Henry Guo
91f80a5585
feat(scanner): expose lifecycle transition status ( #3326 )
...
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-10 16:45:02 +00:00
安正超
d9ddd1bedc
feat(storage-api): add disk inventory contract ( #3330 )
2026-06-10 16:33:31 +00:00
houseme
b1339a98ed
fix(scanner): delay deep verify for fresh objects ( #3329 )
...
Gate scanner-triggered deep heal behind a short new-object cooldown and retry transient bitrot shard size mismatches during local verification.
Add targeted tests for cooldown mode selection and size-mismatch classification, and log when deep scans are downgraded or size-mismatch retries occur.
2026-06-10 15:50:44 +00:00
houseme
3fed21c68a
fix(startup): add disk init diagnostics ( #3324 )
...
* ci(build): remove macOS x86_64 target
* ci(build): reduce workflow timeout
* fix(startup): add disk init diagnostics
2026-06-10 14:24:12 +00:00
Henry Guo
64c0ede026
feat(table-catalog): add product API surface ( #3320 )
...
* feat(table-catalog): add product API surface
* fix(table-catalog): harden product API commits
* fix(table-catalog): close product API review gaps
* fix(table-catalog): validate rollback metadata before commit
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
1.0.0-beta.8
2026-06-10 07:58:22 +00:00
Henry Guo
66fd55a8e0
feat(scanner): expose pacing pressure status ( #3319 )
...
* feat(scanner): expose pacing pressure status
* fix(scanner): preserve merged pause pressure
* fix(scanner): default missing primary pressure
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-10 07:33:41 +00:00
安正超
bb5d9565a6
feat(storage-api): add bucket DTO contract ( #3314 )
...
* feat(storage-api): add bucket DTO contract
* ci(build): increase workflow timeout to 90 minutes
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-06-10 07:16:14 +00:00
houseme
b9c924a6ed
build(ci): update macOS runner and bump regex/uuid ( #3318 )
...
* ci(build): use macos-26-intel for x86_64 job
* build(deps): bump regex and uuid
* ci(build): disable cross for macos x86_64 job
---------
Co-authored-by: majinghe <42570491+majinghe@users.noreply.github.com >
2026-06-10 04:42:10 +00:00
houseme
68400933b5
chore(release): prepare 1.0.0-beta.8 ( #3317 )
...
* chore(release): prepare 1.0.0-beta.8
* chore(release): align release assets for 1.0.0-beta.8
2026-06-10 04:34:39 +00:00
安正超
0dc99a1abb
docs: inventory KMS development defaults ( #3304 )
2026-06-10 12:46:08 +08:00
Henry Guo
d7a7d1fc1e
feat(table-catalog): add REST catalog alias ( #3316 )
...
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-10 03:55:58 +00:00
Henry Guo
62e9c5b94f
feat(scanner): add adaptive pacing controls ( #3315 )
...
* feat(scanner): add adaptive pacing controls
* fix(scanner): bound pacing delay status precision
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-10 03:46:02 +00:00
安正超
f80162b5c9
docs: decide config model boundary ( #3307 )
2026-06-10 10:02:53 +08:00
Henry Guo
2eafd9c602
feat(table-catalog): add credential response boundary ( #3305 )
...
* feat(table-catalog): add credential response boundary
* fix(table-catalog): enforce scoped catalog resources
* fix(table-catalog): reduce admin auth scope arguments
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-06-10 01:15:51 +00:00
安正超
a73c90c811
security: redact IAM and target debug secrets ( #3306 )
2026-06-10 09:03:50 +08:00
安正超
3795d44b86
feat(storage-api): add error code contract ( #3313 )
2026-06-10 09:03:29 +08:00
安正超
5fef105484
docs: define background controller contract ( #3312 )
2026-06-10 07:30:21 +08:00
安正超
bc95b9fb9e
test: guard table catalog ingress unknown fields ( #3308 )
2026-06-09 20:06:36 +00:00
安正超
45391ac776
feat(storage-api): add contract crate ( #3310 )
2026-06-09 20:06:15 +00:00
安正超
f9a5e6d7e6
docs: inventory background services ( #3311 )
2026-06-10 04:05:33 +08:00
安正超
03eb10b07f
feat: add KMS config redaction safeguards ( #3303 )
2026-06-09 14:08:58 +00:00
Henry Guo
7ec16e197c
feat(table-catalog): add metadata maintenance control plane ( #3302 )
...
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-09 22:08:28 +08:00
Julien Pervillé
992de65c58
feat(helm): add priorityClassName attribute ( #3301 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-06-09 22:07:41 +08:00
Maksim Vykhota
c4d0d395af
Refactor(CLI): avoid unnecessary unreachable! macro in CLI parsing ( #3288 )
...
* Refactor(CLI): avoid unnecessary `unreachable!` macro in CLI parsing
* Fix: clippy lint
---------
Co-authored-by: cxymds <Cxymds@qq.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-06-09 22:01:51 +08:00
Henry Guo
e79c793803
feat(heal): add scanner-aware bitrot controls ( #3297 )
...
* feat(heal): add scanner-aware bitrot controls
* fix(config): register heal defaults
* test(admin): avoid heal config queue conflict
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-06-09 13:43:18 +00:00
Henry Guo
0cdcd1eb7b
feat(table-catalog): internalize catalog backing paths ( #3295 )
...
* feat(table-catalog): internalize catalog backing paths
* fix(table-catalog): clean internal catalog on bucket delete
---------
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-09 12:01:25 +00:00
cxymds
55590e38fb
fix(config): accept Kafka SASL keys in legacy admin ( #3300 )
2026-06-09 12:01:15 +00:00
安正超
f5bb034ec8
feat(kms): migrate KMS handlers to dedicated actions ( #3298 )
...
feat: migrate KMS handlers to dedicated actions
2026-06-09 12:01:02 +00:00
安正超
4fec606dc4
feat: add KMS action taxonomy ( #3294 )
2026-06-09 05:06:15 +00:00
Henry Guo
ad9bf41fc8
feat(heal): expose scanner heal admission outcomes ( #3292 )
...
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
Co-authored-by: cxymds <Cxymds@qq.com >
2026-06-09 03:39:57 +00:00
Henry Guo
51c26278a4
feat(table-catalog): support standard REST create commit ( #3287 )
...
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-09 02:18:33 +00:00
安正超
b9a3a2245a
feat: add admin route policy inventory ( #3286 )
...
* feat: add admin route policy inventory
* fix: align table route policy actions
* fix: align load table route policy action
2026-06-09 02:17:50 +00:00