Commit Graph

  • 633c9bfe09 fix(batch): keep a job across edits that keep its credential Feng Ruohang 2026-11-08 11:39:03 +08:00
  • 18e09ca219 fix(batch): refuse a job only for a Deny that needs request context Feng Ruohang 2026-11-08 11:39:01 +08:00
  • a6571a53e9 chore(batch): keep the policy snapshot out of msgp generation Feng Ruohang 2026-11-08 11:38:59 +08:00
  • 657fc5e827 chore(security): add OSS Scanner configuration Feng Ruohang 2026-11-08 00:18:25 +08:00
  • 6a7beb8a41 chore(batch): satisfy the staticcheck selector check in the policy snapshot Feng Ruohang 2026-11-07 17:08:13 +08:00
  • bd39bab339 test(ilm): cover the history majority, approval check and tier ownership gates Feng Ruohang 2026-11-07 16:42:02 +08:00
  • 04d7d91973 fix(ilm): count and trace a read-time expiry the all-pools recheck skips Feng Ruohang 2026-11-07 16:25:05 +08:00
  • 7a13780d81 fix(ilm): queue version heals when an undecodable history refuses a purge Feng Ruohang 2026-11-07 16:20:09 +08:00
  • b8ebaffd2e fix(restore): name the server that keeps native restore unavailable Feng Ruohang 2026-11-07 16:10:12 +08:00
  • 5cb91e7d74 fix(decom): move a tiered version whose restored-copy removal is refused Feng Ruohang 2026-11-07 15:59:03 +08:00
  • a2ff3c2ecd fix(api): keep GetObjectAttributes server errors and check s3:ListBucket on the bucket Denis Babchuk 2026-11-07 11:43:31 +03:00
  • 67bc32f401 test(api): cover GetObjectAttributes errors with and without s3:ListBucket Denis Babchuk 2026-11-07 11:43:31 +03:00
  • 3c4a6296f9 fix(auth): keep the server error when a read allowed by object tags cannot read the tags Denis Babchuk 2026-11-07 11:43:30 +03:00
  • afa35d16e9 test(auth): cover reads allowed by s3:ExistingObjectTag when the object cannot be read Denis Babchuk 2026-11-07 11:43:29 +03:00
  • 07b89b98fa fix(batch): count a key with a transitioned version as refused by the purge Feng Ruohang 2026-11-07 16:17:10 +08:00
  • 378f281bef fix(batch): leave no record for a canceled job nobody owns after discovery Feng Ruohang 2026-11-07 16:08:52 +08:00
  • 5fb983d3d2 fix(batch): skip deleted policies a mapping still names Feng Ruohang 2026-11-07 16:04:51 +08:00
  • 9f9398a1a3 fix(batch): keep cached authorization available during batch policy loads Feng Ruohang 2026-11-07 16:01:42 +08:00
  • 1516273162 fix(pools): evaluate cross-pool NewMultipartUpload conditions against the current object Denis Babchuk 2026-11-07 11:16:38 +03:00
  • 210fd568cc test(pools): cover conditional NewMultipartUpload across pools Denis Babchuk 2026-11-07 11:12:39 +03:00
  • f3e84d54a9 ci: run the logger target lifecycle test under the race detector and document the dev tag Feng Ruohang 2026-11-07 16:08:40 +08:00
  • 479a49b28b fix(storage): retry metadata writes against a late RenameData cleanup Feng Ruohang 2026-11-07 16:07:55 +08:00
  • 8cc2360c3a fix(batch): release terminal markers after startup discovery Feng Ruohang 2026-11-07 02:49:44 +08:00
  • 41b71a8bc1 fix(batch): recover incomplete startup discovery without rerunning jobs Feng Ruohang 2026-11-07 02:35:15 +08:00
  • 00270e9f61 fix(iam): keep cached authorization available during lazy loads Feng Ruohang 2026-11-07 02:05:58 +08:00
  • c78ef6a6f6 fix(iam): reject incomplete policy loads throughout authorization Feng Ruohang 2026-11-07 01:53:14 +08:00
  • e9da6f91f4 chore: refresh retired internal restore header inventory Feng Ruohang 2026-11-07 01:16:46 +08:00
  • 6434d768de chore: satisfy review-fix formatting and unused-code checks Feng Ruohang 2026-11-07 01:12:40 +08:00
  • b524fc4fb7 fix(ilm): queue explicit version heals after corrupt history refusal Feng Ruohang 2026-11-07 01:10:01 +08:00
  • bdd17b0f47 fix(batch): pause transient authorization failures with owned retries Feng Ruohang 2026-11-07 00:42:02 +08:00
  • ade15ea5d0 fix(tier): retain remote ownership through cleanup and migration Feng Ruohang 2026-11-07 00:32:16 +08:00
  • 98fd7004e8 fix(heal): classify xl.meta checksum failures as storage corruption Feng Ruohang 2026-11-07 00:23:45 +08:00
  • 96b3a19d0a fix(decom): preserve cancellation during finalization Feng Ruohang 2026-11-06 23:20:31 +08:00
  • db0c0ffedd test(ilm): check the purge's history error end to end Feng Ruohang 2026-11-06 20:28:55 +08:00
  • 7af07298ce fix(ilm): trace refused expiries with their error; harden the tests Feng Ruohang 2026-11-06 20:23:32 +08:00
  • b10fd0e9c0 fix(ilm): report refused purges of all versions, and account their keys Feng Ruohang 2026-11-06 19:59:42 +08:00
  • 852e2a6707 fix(decom): move the other buckets when one cannot be finished Feng Ruohang 2026-11-06 19:45:07 +08:00
  • 04c657d03f test(pools): cover aliases of other sets in a shared lock table Feng Ruohang 2026-11-06 19:41:32 +08:00
  • 3268fbea7e fix(restore): queue the heal of a partial commit under the normalized ID Feng Ruohang 2026-11-06 19:40:24 +08:00
  • 94d91703b5 fix(ilm): report expiries that remove nothing, and name what one removed Feng Ruohang 2026-11-06 19:29:22 +08:00
  • 1eee720f74 test(heal): set the parity the drive heal tests rebuild from Feng Ruohang 2026-11-06 19:29:22 +08:00
  • 1780eb8ffc test(pools): make the copy and bulk lock tests race-free and stricter Feng Ruohang 2026-11-06 19:25:56 +08:00
  • b32a389e9d perf(pools): read a key's history once in a migration walk's prechecks Feng Ruohang 2026-11-06 19:09:54 +08:00
  • 2a66ab65d7 fix(batch): do not run a completed expire job again Feng Ruohang 2026-11-06 18:55:00 +08:00
  • 0c6aaca6e2 fix(pools): an approved ILM version expiry deletes every copy Feng Ruohang 2026-11-06 18:53:27 +08:00
  • 1bd0b1b04d fix(ilm): do not replicate deletes that lifecycle makes Feng Ruohang 2026-11-06 18:53:27 +08:00
  • d56b1063b9 perf(pools): delete the set groups of a bulk delete concurrently Feng Ruohang 2026-11-06 18:38:34 +08:00
  • a4453a1a55 fix(pools): wait for a contended copy lock while holding nothing Feng Ruohang 2026-11-06 18:34:19 +08:00
  • 617d8ed67b fix(pools): check copy names before locking them Feng Ruohang 2026-11-06 18:28:27 +08:00
  • 928c827508 fix(heal): heal a version whose expiry drive healing enqueues Feng Ruohang 2026-11-06 18:22:06 +08:00
  • f4b6c04c9f Merge restore test race fix Feng Ruohang 2026-11-06 16:42:08 +08:00
  • 54186040ca test(restore): release the handed-over restore lock before reusing options Feng Ruohang 2026-11-06 16:42:01 +08:00
  • 69a4f938a2 Merge partial-view read fix Feng Ruohang 2026-11-06 16:23:20 +08:00
  • 3e954ad06e fix(erasure): do not report an existing object missing from a partial view Feng Ruohang 2026-11-06 16:02:47 +08:00
  • c45b26a75c Merge batch job authorization and Object Lock enforcement Feng Ruohang 2026-11-06 13:00:04 +08:00
  • 77ad2fc12b test(batch): pin the parity of the drive-revision purge test Feng Ruohang 2026-11-05 09:26:32 +08:00
  • adc824087b fix(batch): fail an expiration run whose listing fails at once Feng Ruohang 2026-11-05 09:04:39 +08:00
  • 21b6711562 fix(batch): rotate exactly the copy that was read and authorized Feng Ruohang 2026-11-05 09:04:13 +08:00
  • 9fe32b7743 fix(batch): authorize the versions that a purge of all versions deletes Feng Ruohang 2026-11-05 07:10:32 +08:00
  • ae54718d84 test(batch): cover submitter authorization and locked versions Feng Ruohang 2026-11-05 04:14:06 +08:00
  • 303e340292 fix(batch): authorize batch jobs as their submitter Feng Ruohang 2026-11-05 04:14:06 +08:00
  • a717711b11 fix(iam): separate local policy evaluation from the plugin decision Feng Ruohang 2026-11-05 04:14:06 +08:00
  • 57c2b0fb76 fix(batch): let a write refuse to replace a locked version Feng Ruohang 2026-11-05 04:14:06 +08:00
  • 9fefb756ad Merge exact-key purge for lifecycle delete-all Feng Ruohang 2026-11-06 12:59:35 +08:00
  • a7e7682e1b Merge SILO Console 2.6.0 pin Feng Ruohang 2026-11-06 12:59:35 +08:00
  • 09d6a22993 Merge empty object directory cleanup (#285, #286) Feng Ruohang 2026-11-06 12:59:35 +08:00
  • b7062cae75 Merge webhook and audit target reload fix (#259) Feng Ruohang 2026-11-06 12:59:34 +08:00
  • e5bcbc7d82 Merge heal dry-run fixes (#280) Feng Ruohang 2026-11-06 12:59:34 +08:00
  • b3a5307980 Merge lifecycle expiry, native restore and lock-domain fixes (#278, #281, #284) Feng Ruohang 2026-11-06 12:59:34 +08:00
  • 90a430108c chore: update repository cards 2026-11-06 github-actions[bot] 2026-11-06 04:05:05 +00:00
  • 45b1e4bc00 fix(restore): stage native restores outside the object lock Feng Ruohang 2026-11-06 11:30:29 +08:00
  • 14d49f14f7 test: record webhook environment prefix compatibility Feng Ruohang 2026-11-05 16:08:11 +08:00
  • 584bb3cc53 docs: include licenses for Console PostgreSQL dependencies Feng Ruohang 2026-11-05 16:08:10 +08:00
  • f85d4a5fa1 test: satisfy acceptance lint and compatibility checks Feng Ruohang 2026-11-05 16:04:56 +08:00
  • 9d1ad54a97 chore: update repository cards 2026-11-05 github-actions[bot] 2026-11-05 04:08:30 +00:00
  • 67a6532dec test(restore): give native-restore liveness waits one minute Feng Ruohang 2026-11-05 11:34:34 +08:00
  • 28a9e67ac7 deps: pin SILO Console 2.6.0 Feng Ruohang 2026-11-05 02:47:26 +08:00
  • 7fac646923 refactor(restore): take the restore lock from the object lock domain Feng Ruohang 2026-11-05 06:50:32 +08:00
  • 32ab506924 fix(pools): lock single-pool object writes in the object's own erasure set Feng Ruohang 2026-11-05 03:31:03 +08:00
  • 7f38bf6282 fix(restore): give each native restore an owner and a private upload Feng Ruohang 2026-11-05 06:47:38 +08:00
  • 2b228f678c fix(ilm): purge only the expired key's own versions in delete-all Feng Ruohang 2026-11-05 03:24:42 +08:00
  • 73025824a3 fix(storage): also remove the empty object directory when the xl.meta commit fails Feng Ruohang 2026-11-05 02:39:26 +08:00
  • 0fa4a8c503 fix(logger): keep reloaded webhook and audit targets alive after a peer reload Feng Ruohang 2026-11-05 02:20:06 +08:00
  • dd0a2da55e fix(heal): send the dry-run flag to remote bucket heal Feng Ruohang 2026-11-05 01:21:13 +08:00
  • c8dd5678bb fix(heal): do not purge dangling data during a dry-run heal Feng Ruohang 2026-11-05 01:21:13 +08:00
  • 9f7b49369d fix(ilm): require an authoritative cross-pool history before lifecycle expiry Feng Ruohang 2026-11-05 00:16:27 +08:00
  • ed05d982a1 fix(storage): remove the empty object directory of a failed RenameData Denis Babchuk 2026-11-04 11:27:31 +03:00
  • f321f7f1c7 fix(ilm): do not announce batch expiries the recheck rejected Feng Ruohang 2026-11-04 16:37:42 +08:00
  • 82dd12faf8 fix(restore): keep queued restores waiting for the object lock Feng Ruohang 2026-11-04 16:37:42 +08:00
  • a63bf6b424 chore: update repository cards 2026-11-04 github-actions[bot] 2026-11-04 03:49:30 +00:00
  • 3ddf83182f Integrate scanner rejection contract regression Feng Ruohang 2026-11-03 22:56:05 +08:00
  • 374b9ce309 Include R1 scanner rejection regression in R4 dependency Feng Ruohang 2026-11-03 22:56:05 +08:00
  • 0c5a309507 test(ilm): assert scanner refusal without claiming absence Feng Ruohang 2026-11-03 22:56:05 +08:00
  • f83d02831c Integrate complete R3 encoding and safe-read repairs Feng Ruohang 2026-11-03 22:46:04 +08:00
  • 496eab4b76 fix(restore): preserve safe read context through nested lookups Feng Ruohang 2026-11-03 22:46:03 +08:00
  • add36e7052 Integrate R4 with complete R1 safety dependency Feng Ruohang 2026-11-03 22:45:14 +08:00
  • ea483e453e Integrate R2 restore cleanup boundary repairs Feng Ruohang 2026-11-03 22:45:14 +08:00
  • ce60cc0c84 Integrate R1 adversarial review repairs Feng Ruohang 2026-11-03 22:45:14 +08:00
  • 997846f413 Merge R1 lifecycle safety repair into R4 Feng Ruohang 2026-11-03 22:42:42 +08:00
  • 7c9b6386c6 Merge R2 restore safety repair into R3 Feng Ruohang 2026-11-03 22:40:08 +08:00