From 1f731549e4ca10e7672fe860da463a525833ca60 Mon Sep 17 00:00:00 2001
From: Feng Ruohang
Date: Mon, 9 Nov 2026 21:05:22 +0800
Subject: [PATCH] docs: prepare SILO 20261109
Record RELEASE.2026-11-09T00-00-00Z (package 20261109000000.0.0) in the
changelog: the fixes since 20261026, Console v2.7.0, mcli 20261109 and
silo-pkg v3.16.0, upgrade notes and known issues. Point the README quick
starts at the new image, replace the 20261026 release section with the
20261109 upgrade notice in both languages, refresh the contributor roll
to 2026-11-09, and add a second security contact.
Co-Authored-By: Claude Opus 5.5
Signed-off-by: Feng Ruohang
---
CHANGELOG.md | 130 +++++++++++++++++++++++++++++++++++++++++++++++-
CONTRIBUTORS.md | 91 +++++++++++++++++++++++----------
README.md | 23 ++++-----
README_ZH.md | 23 ++++-----
SECURITY.md | 2 +-
5 files changed, 215 insertions(+), 54 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 04fbe4871..a131a3c24 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,109 @@
# Changelog
-## Unreleased
+## RELEASE.2026-11-09T00-00-00Z
+
+Package version: `20261109000000.0.0`. Publication status and artifacts are
+listed in [GitHub Releases](https://github.com/pgsty/silo/releases). This
+section covers the changes after the published 20261026 source `c3ad836aed0d`.
+Most fixes come from reports and patches by
+[@botdeniska](https://github.com/botdeniska); see [CONTRIBUTORS.md](CONTRIBUTORS.md).
+
+Lifecycle, multi-pool and tiering:
+
+- Decide an ILM expiry under the object lock against the versions of the key
+ in all pools, and refuse one that does not hold for the whole object or whose
+ history or lock protection lacks an authoritative quorum. Decommission and
+ rebalance move such versions instead of dropping them, and an approved
+ version expiry deletes every copy ([#278](https://github.com/pgsty/silo/issues/278)).
+- Expire the restored copy of a current version instead of the object
+ ([#281](https://github.com/pgsty/silo/issues/281)). Keep lifecycle delete-all
+ (`ExpiredObjectAllVersions`, `DelMarkerExpiration`, batch expiration with
+ `retainVersions: 0`) on the expired key instead of the keys below it; a key
+ with a tiered or Object Lock protected version is refused
+ ([#297](https://github.com/pgsty/silo/issues/297)).
+- Stop taking the free version of a deleted tiered version for a version
+ ([#263](https://github.com/pgsty/silo/issues/263)), apply rules whose only
+ action is `DelMarkerExpiration` ([#268](https://github.com/pgsty/silo/issues/268)),
+ and report and account only the removals that happened
+ ([#305](https://github.com/pgsty/silo/issues/305)).
+- Keep remote tier data that another pool still references after a version
+ expiry or tier cleanup ([#306](https://github.com/pgsty/silo/issues/306),
+ [#308](https://github.com/pgsty/silo/issues/308)). Heal versions whose queued
+ expiry is refused ([#303](https://github.com/pgsty/silo/issues/303)), and read
+ a key's history once in migration prechecks ([#304](https://github.com/pgsty/silo/issues/304)).
+- Decommission and rebalance: move objects whose copies have two erasure
+ layouts ([#261](https://github.com/pgsty/silo/issues/261)) and ILM-expired
+ current versions ([#265](https://github.com/pgsty/silo/issues/265)), continue
+ with later buckets when one cannot finish and keep cancellation
+ ([#307](https://github.com/pgsty/silo/issues/307)), and do not panic when a
+ rebalance stop finds no metadata ([#270](https://github.com/pgsty/silo/issues/270)).
+- Do not replicate the delete markers and version purges that lifecycle
+ creates, as in S3. [PR #240](https://github.com/pgsty/silo/pull/240) remains
+ open as a proposal.
+
+Native restore:
+
+- Restore in two phases, without holding the object write lock during the tier
+ download ([#284](https://github.com/pgsty/silo/issues/284)). Restores with more
+ than one pool no longer hang, stay in progress or change the restored version
+ ([#289](https://github.com/pgsty/silo/issues/289)), and a failed ordinary
+ multipart completion stays usable ([#327](https://github.com/pgsty/silo/issues/327)).
+
+Locking, conditional writes and storage:
+
+- Lock every write and delete of a single pool in the object's own erasure set
+ ([#298](https://github.com/pgsty/silo/issues/298)). Fix CopyObject waiting on
+ its own lock for normalized aliases ([#299](https://github.com/pgsty/silo/issues/299))
+ and starving its destination while waiting for the source
+ ([#300](https://github.com/pgsty/silo/issues/300)); delete the set groups of a
+ bulk delete concurrently ([#301](https://github.com/pgsty/silo/issues/301)).
+- Evaluate `If-Match` and `If-None-Match` of a multi-pool CreateMultipartUpload
+ against the current object ([#291](https://github.com/pgsty/silo/issues/291),
+ [PR #292](https://github.com/pgsty/silo/pull/292)).
+- Answer a retryable `503` instead of `NoSuchKey` when a node sees only some
+ drives of an existing object ([#302](https://github.com/pgsty/silo/issues/302)), remove the empty object
+ directory of a failed write ([#285](https://github.com/pgsty/silo/issues/285),
+ [PR #286](https://github.com/pgsty/silo/pull/286)), classify `xl.meta`
+ checksum failures for healing ([#309](https://github.com/pgsty/silo/issues/309)),
+ and keep a heal dry run from deleting data
+ ([PR #280](https://github.com/pgsty/silo/pull/280), thanks to
+ [@dihmandrake](https://github.com/dihmandrake)).
+
+Object Lock, IAM and batch jobs:
+
+- Keep the target's legal hold and retention on a replicated delete; a source
+ purge that bypassed GOVERNANCE retention is refused by a target copy that
+ still carries it, and the source retries. Check a directory object's lock
+ before a bulk delete removes its null version.
+- Batch jobs enforce the submitter's data permissions throughout execution and
+ leave Object Lock protected versions alone ([#310](https://github.com/pgsty/silo/issues/310),
+ [#311](https://github.com/pgsty/silo/issues/311)). Key rotation keeps other
+ pool copies readable ([#312](https://github.com/pgsty/silo/issues/312)).
+ Transient failures pause work instead of ending it, saved jobs are found
+ after a failed startup scan, and running replication resumes
+ ([#313](https://github.com/pgsty/silo/issues/313), [#314](https://github.com/pgsty/silo/issues/314),
+ [#324](https://github.com/pgsty/silo/issues/324)). A completed expiration job
+ stays completed after a restart ([#315](https://github.com/pgsty/silo/issues/315)).
+ Authorization skips deleted policies a mapping still names, refuses a job
+ only for a Deny that needs request context, and survives metadata edits and
+ LDAP refreshes that keep the credential
+ ([#318](https://github.com/pgsty/silo/issues/318)–[#320](https://github.com/pgsty/silo/issues/320)).
+ Live metrics keep pause reasons and skipped or refused counts
+ ([#325](https://github.com/pgsty/silo/issues/325)), and `make check-gen`
+ leaves the runtime policy snapshot alone ([#326](https://github.com/pgsty/silo/issues/326)).
+- IAM refuses incomplete policy loads, keeps cached authentication available
+ during lazy loads, and applies edits, LDAP group refreshes and service-account
+ creation to the stored record, so a stale node cannot restore old credentials
+ or resurrect deleted identities ([#316](https://github.com/pgsty/silo/issues/316),
+ [#317](https://github.com/pgsty/silo/issues/317), [#321](https://github.com/pgsty/silo/issues/321)–[#323](https://github.com/pgsty/silo/issues/323)).
+- Log in LDAP users with long DNs on erasure sets, and root to the embedded
+ Console with LDAP enabled ([#271](https://github.com/pgsty/silo/issues/271),
+ [#272](https://github.com/pgsty/silo/issues/272)). Keep audit and logger
+ webhook targets running on every server after a configuration reload
+ ([#259](https://github.com/pgsty/silo/issues/259), reported by
+ [@haf](https://github.com/haf)).
+
+Components and packaging:
- Embed the published Console v2.7.0 source `4e91ae506e70`, including its
ten-language UI, rebuilt frontend assets, Swagger array-validation fixes,
@@ -21,6 +124,31 @@
that release by default in the integration-test client installer.
- Prevent replication worker metrics from panicking when the replication
pool is absent, while retaining historical averages and peak counts.
+- Give the distroless image the same CA roots as the standard image, and ship
+ mcli's license files in both ([#295](https://github.com/pgsty/silo/pull/295)).
+- Deploy SILO and mcli `RELEASE.2026-11-09T00-00-00Z` by default from Helm
+ chart 7.0.4; the server image tag was left at 20260916 before
+ ([#296](https://github.com/pgsty/silo/issues/296)).
+
+Upgrade notes:
+
+- A single pool whose erasure sets do not all use the same hosts (with the
+ automatic layout, 18 or more hosts) needs a drained restart, not a rolling
+ upgrade: old and new nodes lock deletes and copies in different sets and do
+ not exclude each other. Stop every old process before a new one serves.
+- During a rolling upgrade, upgraded nodes answer `POST ?restore` with `503`
+ while any peer is old or unreachable. Pause new restores until every node is
+ upgraded. Multi-pool lifecycle protection is complete only after a full
+ upgrade.
+- `helm upgrade --reuse-values` keeps the previously stored `image.tag`; set it
+ explicitly when upgrading such a release.
+
+Known issues: `ListMultipartUploads` prefix and paging
+([#79](https://github.com/pgsty/silo/issues/79)), multi-site delete-marker purge
+([#217](https://github.com/pgsty/silo/issues/217)), replayed bucket creation
+under site replication ([PR #241](https://github.com/pgsty/silo/pull/241)), and
+`403` instead of the server error for reads allowed only by object tags while
+the object is unreadable ([#293](https://github.com/pgsty/silo/issues/293)).
## RELEASE.2026-10-26T00-00-00Z
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index ce0c5d89a..bfcd23b26 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -2,7 +2,7 @@
-As of **2026-10-26**, **67 community contributors** are credited in SILO and related projects. The roll includes maintainers and every human issue / PR author, along with security reporters who have agreed to be acknowledged.
+As of **2026-11-09**, **76 community contributors** are credited in SILO and related projects. The roll includes maintainers and every human issue / PR author, along with security reporters who have agreed to be acknowledged.
Opening an issue or PR counts, whether open, closed, draft, or unmerged. Each account appears once. Merged PR authors come first, followed by other PR authors and reporters. Within each group, significant fixes, adopted proposals, and reports that led to fixes take priority, followed by first participation. Gold rings highlight significant contributions.
@@ -25,15 +25,21 @@ When a proposal was incorporated through a later repair, its adoption is credite
-
+
+
+
+
+
+
+
@@ -42,6 +48,9 @@ When a proposal was incorporated through a later repair, its adoption is credite
+
+
+
@@ -59,7 +68,6 @@ When a proposal was incorporated through a later repair, its adoption is credite
-
@@ -75,14 +83,15 @@ When a proposal was incorporated through a later repair, its adoption is credite
-
+
+
## Merged pull requests
| Contributor | Contribution | Record |
| :-- | :-- | :-- |
-| [@Vonng](https://github.com/Vonng) | Maintains SILO, Console, mcli, shared packages, releases, and documentation | [pgsty/silo: Merged PRs (90)](https://github.com/pgsty/silo/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
PRs closed without merging: [pgsty/silo#155](https://github.com/pgsty/silo/pull/155), [pgsty/silo#195](https://github.com/pgsty/silo/pull/195)
[pgsty/silo: Closed issues (67)](https://github.com/pgsty/silo/issues?q=author%3AVonng+is%3Aissue+is%3Aclosed)
Open issues: [pgsty/silo#217](https://github.com/pgsty/silo/issues/217)
[pgsty/silo-console: Merged PRs (33)](https://github.com/pgsty/silo-console/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
[pgsty/silo-console: Closed issues (34)](https://github.com/pgsty/silo-console/issues?q=author%3AVonng+is%3Aissue+is%3Aclosed)
[pgsty/mc: Merged PRs (27)](https://github.com/pgsty/mc/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
[pgsty/mc: Closed issues (23)](https://github.com/pgsty/mc/issues?q=author%3AVonng+is%3Aissue+is%3Aclosed)
Merged PRs: [pgsty/silo-pkg#1](https://github.com/pgsty/silo-pkg/pull/1), [pgsty/silo-pkg#2](https://github.com/pgsty/silo-pkg/pull/2), [pgsty/silo-pkg#3](https://github.com/pgsty/silo-pkg/pull/3), [pgsty/silo-pkg#4](https://github.com/pgsty/silo-pkg/pull/4), [pgsty/silo-pkg#5](https://github.com/pgsty/silo-pkg/pull/5), [pgsty/silo-pkg#6](https://github.com/pgsty/silo-pkg/pull/6), [pgsty/silo-pkg#7](https://github.com/pgsty/silo-pkg/pull/7), [pgsty/silo-pkg#8](https://github.com/pgsty/silo-pkg/pull/8), [pgsty/silo-pkg#9](https://github.com/pgsty/silo-pkg/pull/9), [pgsty/silo-pkg#10](https://github.com/pgsty/silo-pkg/pull/10), [pgsty/silo-pkg#12](https://github.com/pgsty/silo-pkg/pull/12)
Merged PRs: [pgsty/kes#1](https://github.com/pgsty/kes/pull/1)
[pgsty/silo.pgsty.com: Merged PRs (42)](https://github.com/pgsty/silo.pgsty.com/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
PRs closed without merging: [pgsty/silo.pgsty.com#36](https://github.com/pgsty/silo.pgsty.com/pull/36) |
+| [@Vonng](https://github.com/Vonng) | Maintains SILO, Console, mcli, shared packages, releases, and documentation | [pgsty/silo: Merged PRs (93)](https://github.com/pgsty/silo/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
PRs closed without merging: [pgsty/silo#155](https://github.com/pgsty/silo/pull/155), [pgsty/silo#195](https://github.com/pgsty/silo/pull/195)
[pgsty/silo: Closed issues (99)](https://github.com/pgsty/silo/issues?q=author%3AVonng+is%3Aissue+is%3Aclosed)
Open issues: [pgsty/silo#217](https://github.com/pgsty/silo/issues/217)
[pgsty/silo-console: Merged PRs (42)](https://github.com/pgsty/silo-console/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
[pgsty/silo-console: Closed issues (39)](https://github.com/pgsty/silo-console/issues?q=author%3AVonng+is%3Aissue+is%3Aclosed)
[pgsty/mc: Merged PRs (30)](https://github.com/pgsty/mc/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
[pgsty/mc: Closed issues (42)](https://github.com/pgsty/mc/issues?q=author%3AVonng+is%3Aissue+is%3Aclosed)
Merged PRs: [pgsty/silo-pkg#1](https://github.com/pgsty/silo-pkg/pull/1), [pgsty/silo-pkg#2](https://github.com/pgsty/silo-pkg/pull/2), [pgsty/silo-pkg#3](https://github.com/pgsty/silo-pkg/pull/3), [pgsty/silo-pkg#4](https://github.com/pgsty/silo-pkg/pull/4), [pgsty/silo-pkg#5](https://github.com/pgsty/silo-pkg/pull/5), [pgsty/silo-pkg#6](https://github.com/pgsty/silo-pkg/pull/6), [pgsty/silo-pkg#7](https://github.com/pgsty/silo-pkg/pull/7), [pgsty/silo-pkg#8](https://github.com/pgsty/silo-pkg/pull/8), [pgsty/silo-pkg#9](https://github.com/pgsty/silo-pkg/pull/9), [pgsty/silo-pkg#10](https://github.com/pgsty/silo-pkg/pull/10), [pgsty/silo-pkg#12](https://github.com/pgsty/silo-pkg/pull/12), [pgsty/silo-pkg#14](https://github.com/pgsty/silo-pkg/pull/14)
Closed issues: [pgsty/silo-pkg#13](https://github.com/pgsty/silo-pkg/issues/13)
Merged PRs: [pgsty/kes#1](https://github.com/pgsty/kes/pull/1)
[pgsty/silo.pgsty.com: Merged PRs (48)](https://github.com/pgsty/silo.pgsty.com/issues?q=author%3AVonng+is%3Apr+is%3Amerged)
PRs closed without merging: [pgsty/silo.pgsty.com#36](https://github.com/pgsty/silo.pgsty.com/pull/36) |
| [@ZouhairCharef](https://github.com/ZouhairCharef) | Patched CVE-2026-34986 in go-jose | Merged PRs: [pgsty/silo#18](https://github.com/pgsty/silo/pull/18) |
| [@mfredenhagen](https://github.com/mfredenhagen) | Patched CVE-2026-39883 in OpenTelemetry | Merged PRs: [pgsty/silo#19](https://github.com/pgsty/silo/pull/19) |
| [@cbornet](https://github.com/cbornet) | Reported checksum and missing-bucket defects and aligned S3 checksum error messages | Merged PRs: [pgsty/silo#225](https://github.com/pgsty/silo/pull/225)
Closed issues: [pgsty/silo#31](https://github.com/pgsty/silo/issues/31), [pgsty/silo#32](https://github.com/pgsty/silo/issues/32), [pgsty/silo#107](https://github.com/pgsty/silo/issues/107), [pgsty/silo#226](https://github.com/pgsty/silo/issues/226) |
@@ -98,8 +107,10 @@ When a proposal was incorporated through a later repair, its adoption is credite
| [@AleksaMCode](https://github.com/AleksaMCode) | Fixed the Lambda target-set emptiness check and added a regression test | Merged PRs: [pgsty/silo#220](https://github.com/pgsty/silo/pull/220) |
| [@yupoet](https://github.com/yupoet) | Improved checksum mismatch messages, verified erasure-coding documentation, and contributed a single-node migration case | Merged PRs: [pgsty/silo#228](https://github.com/pgsty/silo/pull/228), [pgsty/silo#229](https://github.com/pgsty/silo/pull/229)
PRs closed without merging: [pgsty/silo#230](https://github.com/pgsty/silo/pull/230)
Also [cross-checked the two-drive EC:1 documentation](https://github.com/pgsty/silo/issues/197#issuecomment-5846341939). The single-node migration report in #228 was merged on 2026-10-23; the registry-mirror proposal in #230 was closed without merging. |
| [@clown15](https://github.com/clown15) | Fixed native multipart-upload timestamp parsing during stale-upload cleanup | Merged PRs: [pgsty/silo#236](https://github.com/pgsty/silo/pull/236) |
-| [@botdeniska](https://github.com/botdeniska) | Contributed multi-pool migration, deletion safety and conditional multipart checks, tiered expiry and replication checksum repairs, and faster policy evaluation in silo-pkg | Merged PRs: [pgsty/silo#253](https://github.com/pgsty/silo/pull/253), [pgsty/silo#255](https://github.com/pgsty/silo/pull/255), [pgsty/silo#257](https://github.com/pgsty/silo/pull/257), [pgsty/silo#292](https://github.com/pgsty/silo/pull/292)
PRs closed without merging: [pgsty/silo#245](https://github.com/pgsty/silo/pull/245), [pgsty/silo#248](https://github.com/pgsty/silo/pull/248)
Closed issues: [pgsty/silo#252](https://github.com/pgsty/silo/issues/252), [pgsty/silo#254](https://github.com/pgsty/silo/issues/254), [pgsty/silo#256](https://github.com/pgsty/silo/issues/256), [pgsty/silo#291](https://github.com/pgsty/silo/issues/291)
Merged PRs: [pgsty/silo-pkg#11](https://github.com/pgsty/silo-pkg/pull/11)
The migration repair from [#248](https://github.com/pgsty/silo/pull/248) was incorporated in [60c7179dd](https://github.com/pgsty/silo/commit/60c7179ddbfcbd41a1fe67707230f5b360a43020), retaining the original authorship and DCO. |
+| [@botdeniska](https://github.com/botdeniska) | Contributed multi-pool migration, deletion and lifecycle safety, conditional multipart checks, native restore reports and verification, LDAP login and storage cleanup fixes, replication checksum repairs, and faster policy evaluation | [pgsty/silo: Merged PRs (13)](https://github.com/pgsty/silo/issues?q=author%3Abotdeniska+is%3Apr+is%3Amerged)
Open PRs: [pgsty/silo#294](https://github.com/pgsty/silo/pull/294)
PRs closed without merging: [pgsty/silo#245](https://github.com/pgsty/silo/pull/245), [pgsty/silo#248](https://github.com/pgsty/silo/pull/248), [pgsty/silo#262](https://github.com/pgsty/silo/pull/262), [pgsty/silo#290](https://github.com/pgsty/silo/pull/290)
[pgsty/silo: Closed issues (15)](https://github.com/pgsty/silo/issues?q=author%3Abotdeniska+is%3Aissue+is%3Aclosed)
Open issues: [pgsty/silo#293](https://github.com/pgsty/silo/issues/293)
Merged PRs: [pgsty/silo-pkg#11](https://github.com/pgsty/silo-pkg/pull/11)
The migration repair from [#248](https://github.com/pgsty/silo/pull/248) was incorporated in [60c7179dd](https://github.com/pgsty/silo/commit/60c7179ddbfcbd41a1fe67707230f5b360a43020), retaining the original authorship and DCO. The mixed-EC listing proposal in [#262](https://github.com/pgsty/silo/pull/262) was superseded by [#267](https://github.com/pgsty/silo/pull/267). The author closed [#290](https://github.com/pgsty/silo/pull/290) after verifying the native-restore rework covered the reported defects. |
| [@910patin](https://github.com/910patin) | Fixed long-DN LDAP login while preserving IAM revocation-record errors | Merged PRs: [pgsty/silo#250](https://github.com/pgsty/silo/pull/250) |
+| [@cyberbret](https://github.com/cyberbret) | Contributed on-demand folder and bucket usage scans and the optional persistent usage worker | Merged PRs: [pgsty/silo-console#70](https://github.com/pgsty/silo-console/pull/70)
PR [#70](https://github.com/pgsty/silo-console/pull/70) was integrated through [#79](https://github.com/pgsty/silo-console/pull/79), retaining the original commits and authorship. Usage scans and the optional worker shipped in [Console v2.6.0](https://github.com/pgsty/silo-console/releases/tag/v2.6.0). |
+| [@EduardoAndradeMachado](https://github.com/EduardoAndradeMachado) | Contributed Brazilian Portuguese translations to Console and privately reported a security issue | Merged PRs: [pgsty/silo-console#83](https://github.com/pgsty/silo-console/pull/83)
Private security reporting is acknowledged with the reporter's agreement. |
## Other pull-request authors
@@ -110,13 +121,17 @@ When a proposal was incorporated through a later repair, its adoption is credite
| [@metaneutrons](https://github.com/metaneutrons) | Reported and proposed explicit-version delete authorization | PRs closed without merging: [pgsty/silo#59](https://github.com/pgsty/silo/pull/59)
Closed issues: [pgsty/silo#58](https://github.com/pgsty/silo/issues/58)
The original PR was superseded; its authorization action split informed [#104](https://github.com/pgsty/silo/pull/104). |
| [@mikemikimike](https://github.com/mikemikimike) | Contributed the replicated SSE-C plaintext part-size fix | PRs closed without merging: [pgsty/silo#125](https://github.com/pgsty/silo/pull/125)
The original PR was superseded; its plaintext-size fix was incorporated through [#124](https://github.com/pgsty/silo/pull/124), with attribute handling in [#128](https://github.com/pgsty/silo/pull/128). |
| [@chodorenko](https://github.com/chodorenko) | Reported and contributed the fix for aws-chunked leaking into replica metadata | PRs closed without merging: [pgsty/silo#187](https://github.com/pgsty/silo/pull/187)
Closed issues: [pgsty/silo#185](https://github.com/pgsty/silo/issues/185)
The implementation was incorporated in [#194](https://github.com/pgsty/silo/pull/194), with [co-author credit](https://github.com/pgsty/silo/commit/4fcdf37ce656152b32ad0f615d47f5e3f9748c3a); the original PR was closed as superseded. |
+| [@dihmandrake](https://github.com/dihmandrake) | Reported dry-run healing safety issues and proposed parallel deep verification and Helm configuration options | Open PRs: [pgsty/silo#280](https://github.com/pgsty/silo/pull/280), [pgsty/silo#283](https://github.com/pgsty/silo/pull/283)
Dry-run safeguards associated with [#280](https://github.com/pgsty/silo/pull/280) were incorporated independently in [c8dd5678b](https://github.com/pgsty/silo/commit/c8dd5678bb60daceb4ccb252e4527d43a57864c5) and [dd0a2da55](https://github.com/pgsty/silo/commit/dd0a2da55e456bfe69212cd6bcb11c4af65f19bb). The PR remains open, including the parallel-verification proposal. |
| [@sulin37392](https://github.com/sulin37392) | Proposed dependency updates | PRs closed without merging: [pgsty/silo#8](https://github.com/pgsty/silo/pull/8) |
| [@lem21h](https://github.com/lem21h) | Proposed robustness and goroutine improvements | PRs closed without merging: [pgsty/silo#36](https://github.com/pgsty/silo/pull/36) |
+| [@liubin07](https://github.com/liubin07) | Proposed an opt-in object naming mode for coexisting object and prefix names | PRs closed without merging: [pgsty/silo#260](https://github.com/pgsty/silo/pull/260) |
+| [@HaveFun83](https://github.com/HaveFun83) | Proposed configurable Kubernetes health probes in the Helm chart | Open PRs: [pgsty/silo#288](https://github.com/pgsty/silo/pull/288) |
## Issue reports
| Contributor | Contribution | Record |
| :-- | :-- | :-- |
+| [@kh0mka](https://github.com/kh0mka) | Reported inter-node I/O timeouts, OIDC configuration-fetch failures, and lost Console bucket quotas | Closed issues: [pgsty/silo#51](https://github.com/pgsty/silo/issues/51), [pgsty/silo#154](https://github.com/pgsty/silo/issues/154)
Closed issues: [pgsty/silo-console#72](https://github.com/pgsty/silo-console/issues/72) |
| [@MikeVL](https://github.com/MikeVL) | Reported resync throughput overflow and missing JSON status, both fixed in mcli 20261026 | Closed issues: [pgsty/mc#48](https://github.com/pgsty/mc/issues/48), [pgsty/mc#49](https://github.com/pgsty/mc/issues/49) |
| [@vampywiz17](https://github.com/vampywiz17) | Reported LDAP TLS and Console login regressions | Closed issues: [pgsty/silo#15](https://github.com/pgsty/silo/issues/15), [pgsty/silo#108](https://github.com/pgsty/silo/issues/108) |
| [@jiri-pejchal](https://github.com/jiri-pejchal) | Reported the RabbitMQ client vulnerability and the Console share proxy's exposure of internal metrics | Closed issues: [pgsty/silo#176](https://github.com/pgsty/silo/issues/176)
Closed issues: [pgsty/silo-console#52](https://github.com/pgsty/silo-console/issues/52) |
@@ -125,6 +140,9 @@ When a proposal was incorporated through a later repair, its adoption is credite
| [@orenyomtov](https://github.com/orenyomtov) | Reported the unsigned-header CopyObject cross-object read (SN-2026-011) | Security disclosure credited in [SN-2026-011](https://silo.pgsty.com/about/security-advisories/#sn-2026-011), fixed in [#173](https://github.com/pgsty/silo/pull/173). |
| [@nik0xFF](https://github.com/nik0xFF) | Reported a security issue privately by email | Dominik Klug is credited under his full name with his permission. |
| [@szopi00](https://github.com/szopi00) | Reported the Object Lock GOVERNANCE retention authorization bypass | The report led to the Object Lock repairs in [#234](https://github.com/pgsty/silo/pull/234) and [#235](https://github.com/pgsty/silo/pull/235). |
+| [@GhaziTriki](https://github.com/GhaziTriki) | Investigated policy-query and Console slowdown and identified overlapping client mirror jobs | Closed issues: [pgsty/silo#251](https://github.com/pgsty/silo/issues/251)
Closed after the [reporter follow-up](https://github.com/pgsty/silo/issues/251#issuecomment-6417722845) traced the immediate cause to overlapping client mirror jobs; this incident did not establish a SILO version regression. |
+| [@haf](https://github.com/haf) | Reported audit webhook delivery stopping on peer nodes after configuration reload | Closed issues: [pgsty/silo#259](https://github.com/pgsty/silo/issues/259)
The report led to webhook target lifetime and queue recovery repairs in [0fa4a8c50](https://github.com/pgsty/silo/commit/0fa4a8c503941d94c60045dc7a4dbff4d93fca34) and [f3e84d54a](https://github.com/pgsty/silo/commit/f3e84d54a9c869d8baf53bab02b8bc2c81bd1dfb). |
+| [@sun1024](https://github.com/sun1024) | Privately reported a security issue in SILO | Acknowledged with the reporter's agreement; private report details are not included here. |
| [@mosesdd](https://github.com/mosesdd) | Requested a maintained Helm chart | Closed issues: [pgsty/silo#1](https://github.com/pgsty/silo/issues/1) |
| [@Xavier-777](https://github.com/Xavier-777) | Reported Console lifecycle management and file preview gaps | Closed issues: [pgsty/silo#2](https://github.com/pgsty/silo/issues/2), [pgsty/silo#17](https://github.com/pgsty/silo/issues/17) |
| [@jiadzh](https://github.com/jiadzh) | Requested Windows build guidance | Closed issues: [pgsty/silo#3](https://github.com/pgsty/silo/issues/3) |
@@ -142,7 +160,6 @@ When a proposal was incorporated through a later repair, its adoption is credite
| [@kuldeep-link11](https://github.com/kuldeep-link11) | Reported NATS JWT credentials and target reload issues | Closed issues: [pgsty/silo#39](https://github.com/pgsty/silo/issues/39)
Open issues: [pgsty/silo#40](https://github.com/pgsty/silo/issues/40) |
| [@meesudzu](https://github.com/meesudzu) | Requested the migration guide from upstream MinIO | Closed issues: [pgsty/silo#42](https://github.com/pgsty/silo/issues/42) |
| [@pmezhuev](https://github.com/pmezhuev) | Reported missing RPM package signatures | Closed issues: [pgsty/silo#43](https://github.com/pgsty/silo/issues/43) |
-| [@kh0mka](https://github.com/kh0mka) | Reported inter-node I/O timeouts and OIDC configuration-fetch failures | Closed issues: [pgsty/silo#51](https://github.com/pgsty/silo/issues/51), [pgsty/silo#154](https://github.com/pgsty/silo/issues/154) |
| [@bagutzu](https://github.com/bagutzu) | Requested KES-compatible external KMS and OpenBao support | Closed issues: [pgsty/silo#61](https://github.com/pgsty/silo/issues/61) |
| [@liuhaodongliu990-cmyk](https://github.com/liuhaodongliu990-cmyk) | Reported indeterminate progress for prefix downloads | Closed issues: [pgsty/silo#62](https://github.com/pgsty/silo/issues/62) |
| [@DestroyLee](https://github.com/DestroyLee) | Reported the missing documentation navigation | Closed issues: [pgsty/silo.pgsty.com#4](https://github.com/pgsty/silo.pgsty.com/issues/4) |
@@ -158,55 +175,77 @@ When a proposal was incorporated through a later repair, its adoption is credite
| [@geraldcombs](https://github.com/geraldcombs) | Suggested Windows ZIP packaging, adopted across the maintained release tools | Closed issues: [pgsty/mc#45](https://github.com/pgsty/mc/issues/45) |
| [@devTeam-AiReg](https://github.com/devTeam-AiReg) | Asked about availability of the release containing IAM security fixes | Closed issues: [pgsty/silo#247](https://github.com/pgsty/silo/issues/247) |
| [@azataiot](https://github.com/azataiot) | Reported and analyzed high-latency Console health-report truncation during WebSocket close | Closed issues: [pgsty/silo-console#63](https://github.com/pgsty/silo-console/issues/63) |
-| [@GhaziTriki](https://github.com/GhaziTriki) | Reported policy-query and Console performance degradation | Open issues: [pgsty/silo#251](https://github.com/pgsty/silo/issues/251)
IAM policy reload and KMS cancellation repairs have landed; #251 remains open for the broader performance symptoms. |
+| [@siyahkut](https://github.com/siyahkut) | Requested Turkish language support | Open issues: [pgsty/silo#277](https://github.com/pgsty/silo/issues/277) |
+| [@seumasdunlop](https://github.com/seumasdunlop) | Reported the outdated default server image tag in the Helm chart | Open issues: [pgsty/silo#296](https://github.com/pgsty/silo/issues/296) |
## Audit scope
-Counts below come from every page of the GitHub issue / PR records, across all states, including automated accounts. Review dates are listed per repository; records not rechecked retain their earlier dates and states. There are 64 distinct human public issue / PR authors, plus 3 credited security reporters. Excluded automated accounts: `Copilot`, `dependabot[bot]`.
+Counts below come from every page of the GitHub issue / PR records, across all states, including automated accounts. Review dates are listed per repository; records not rechecked retain their earlier dates and states. There are 72 distinct human public issue / PR authors, plus 4 credited security reporters. Excluded automated accounts: `Copilot`, `dependabot[bot]`.
| Repository | Issues | Pull requests | Reviewed |
| :-- | --: | --: | :-- |
-| [pgsty/silo](https://github.com/pgsty/silo) | 123 | 131 | 2026-10-26 |
-| [pgsty/silo-console](https://github.com/pgsty/silo-console) | 36 | 33 | 2026-10-26 |
-| [pgsty/mc](https://github.com/pgsty/mc) | 26 | 29 | 2026-10-26 |
-| [pgsty/silo-pkg](https://github.com/pgsty/silo-pkg) | 0 | 12 | 2026-10-26 |
-| [pgsty/silo-go](https://github.com/pgsty/silo-go) | 0 | 0 | 2026-10-26 |
-| [pgsty/kes](https://github.com/pgsty/kes) | 0 | 1 | 2026-10-26 |
-| [pgsty/silo.pgsty.com](https://github.com/pgsty/silo.pgsty.com) | 1 | 44 | 2026-10-26 |
-| [pgsty/minio-docs](https://github.com/pgsty/minio-docs) | 0 | 0 | 2026-10-26 |
-| **Total** | **186** | **250** | |
+| [pgsty/silo](https://github.com/pgsty/silo) | 171 | 151 | 2026-11-09 |
+| [pgsty/silo-console](https://github.com/pgsty/silo-console) | 42 | 44 | 2026-11-09 |
+| [pgsty/mc](https://github.com/pgsty/mc) | 45 | 32 | 2026-11-09 |
+| [pgsty/silo-pkg](https://github.com/pgsty/silo-pkg) | 1 | 13 | 2026-11-09 |
+| [pgsty/silo-go](https://github.com/pgsty/silo-go) | 0 | 0 | 2026-11-09 |
+| [pgsty/kes](https://github.com/pgsty/kes) | 0 | 1 | 2026-11-09 |
+| [pgsty/silo.pgsty.com](https://github.com/pgsty/silo.pgsty.com) | 1 | 50 | 2026-11-09 |
+| [pgsty/minio-docs](https://github.com/pgsty/minio-docs) | 0 | 0 | 2026-11-09 |
+| **Total** | **260** | **291** | |
## Maintainer record
@Vonng — complete issue / PR record
-Merged PRs: [pgsty/silo#44](https://github.com/pgsty/silo/pull/44), [pgsty/silo#45](https://github.com/pgsty/silo/pull/45), [pgsty/silo#56](https://github.com/pgsty/silo/pull/56), [pgsty/silo#66](https://github.com/pgsty/silo/pull/66), [pgsty/silo#69](https://github.com/pgsty/silo/pull/69), [pgsty/silo#70](https://github.com/pgsty/silo/pull/70), [pgsty/silo#72](https://github.com/pgsty/silo/pull/72), [pgsty/silo#73](https://github.com/pgsty/silo/pull/73), [pgsty/silo#74](https://github.com/pgsty/silo/pull/74), [pgsty/silo#80](https://github.com/pgsty/silo/pull/80), [pgsty/silo#81](https://github.com/pgsty/silo/pull/81), [pgsty/silo#85](https://github.com/pgsty/silo/pull/85), [pgsty/silo#86](https://github.com/pgsty/silo/pull/86), [pgsty/silo#87](https://github.com/pgsty/silo/pull/87), [pgsty/silo#88](https://github.com/pgsty/silo/pull/88), [pgsty/silo#89](https://github.com/pgsty/silo/pull/89), [pgsty/silo#90](https://github.com/pgsty/silo/pull/90), [pgsty/silo#91](https://github.com/pgsty/silo/pull/91), [pgsty/silo#92](https://github.com/pgsty/silo/pull/92), [pgsty/silo#93](https://github.com/pgsty/silo/pull/93), [pgsty/silo#94](https://github.com/pgsty/silo/pull/94), [pgsty/silo#95](https://github.com/pgsty/silo/pull/95), [pgsty/silo#96](https://github.com/pgsty/silo/pull/96), [pgsty/silo#97](https://github.com/pgsty/silo/pull/97), [pgsty/silo#98](https://github.com/pgsty/silo/pull/98), [pgsty/silo#101](https://github.com/pgsty/silo/pull/101), [pgsty/silo#103](https://github.com/pgsty/silo/pull/103), [pgsty/silo#104](https://github.com/pgsty/silo/pull/104), [pgsty/silo#121](https://github.com/pgsty/silo/pull/121), [pgsty/silo#122](https://github.com/pgsty/silo/pull/122), [pgsty/silo#123](https://github.com/pgsty/silo/pull/123), [pgsty/silo#124](https://github.com/pgsty/silo/pull/124), [pgsty/silo#126](https://github.com/pgsty/silo/pull/126), [pgsty/silo#127](https://github.com/pgsty/silo/pull/127), [pgsty/silo#128](https://github.com/pgsty/silo/pull/128), [pgsty/silo#129](https://github.com/pgsty/silo/pull/129), [pgsty/silo#130](https://github.com/pgsty/silo/pull/130), [pgsty/silo#131](https://github.com/pgsty/silo/pull/131), [pgsty/silo#134](https://github.com/pgsty/silo/pull/134), [pgsty/silo#135](https://github.com/pgsty/silo/pull/135), [pgsty/silo#138](https://github.com/pgsty/silo/pull/138), [pgsty/silo#140](https://github.com/pgsty/silo/pull/140), [pgsty/silo#142](https://github.com/pgsty/silo/pull/142), [pgsty/silo#143](https://github.com/pgsty/silo/pull/143), [pgsty/silo#145](https://github.com/pgsty/silo/pull/145), [pgsty/silo#146](https://github.com/pgsty/silo/pull/146), [pgsty/silo#149](https://github.com/pgsty/silo/pull/149), [pgsty/silo#156](https://github.com/pgsty/silo/pull/156), [pgsty/silo#157](https://github.com/pgsty/silo/pull/157), [pgsty/silo#159](https://github.com/pgsty/silo/pull/159), [pgsty/silo#161](https://github.com/pgsty/silo/pull/161), [pgsty/silo#162](https://github.com/pgsty/silo/pull/162), [pgsty/silo#163](https://github.com/pgsty/silo/pull/163), [pgsty/silo#164](https://github.com/pgsty/silo/pull/164), [pgsty/silo#173](https://github.com/pgsty/silo/pull/173), [pgsty/silo#174](https://github.com/pgsty/silo/pull/174), [pgsty/silo#175](https://github.com/pgsty/silo/pull/175), [pgsty/silo#177](https://github.com/pgsty/silo/pull/177), [pgsty/silo#178](https://github.com/pgsty/silo/pull/178), [pgsty/silo#179](https://github.com/pgsty/silo/pull/179), [pgsty/silo#180](https://github.com/pgsty/silo/pull/180), [pgsty/silo#181](https://github.com/pgsty/silo/pull/181), [pgsty/silo#182](https://github.com/pgsty/silo/pull/182), [pgsty/silo#188](https://github.com/pgsty/silo/pull/188), [pgsty/silo#189](https://github.com/pgsty/silo/pull/189), [pgsty/silo#190](https://github.com/pgsty/silo/pull/190), [pgsty/silo#191](https://github.com/pgsty/silo/pull/191), [pgsty/silo#192](https://github.com/pgsty/silo/pull/192), [pgsty/silo#193](https://github.com/pgsty/silo/pull/193), [pgsty/silo#194](https://github.com/pgsty/silo/pull/194), [pgsty/silo#196](https://github.com/pgsty/silo/pull/196), [pgsty/silo#205](https://github.com/pgsty/silo/pull/205), [pgsty/silo#206](https://github.com/pgsty/silo/pull/206), [pgsty/silo#207](https://github.com/pgsty/silo/pull/207), [pgsty/silo#208](https://github.com/pgsty/silo/pull/208), [pgsty/silo#209](https://github.com/pgsty/silo/pull/209), [pgsty/silo#211](https://github.com/pgsty/silo/pull/211), [pgsty/silo#212](https://github.com/pgsty/silo/pull/212), [pgsty/silo#213](https://github.com/pgsty/silo/pull/213), [pgsty/silo#214](https://github.com/pgsty/silo/pull/214), [pgsty/silo#216](https://github.com/pgsty/silo/pull/216), [pgsty/silo#234](https://github.com/pgsty/silo/pull/234), [pgsty/silo#235](https://github.com/pgsty/silo/pull/235), [pgsty/silo#237](https://github.com/pgsty/silo/pull/237), [pgsty/silo#238](https://github.com/pgsty/silo/pull/238), [pgsty/silo#239](https://github.com/pgsty/silo/pull/239), [pgsty/silo#242](https://github.com/pgsty/silo/pull/242), [pgsty/silo#243](https://github.com/pgsty/silo/pull/243), [pgsty/silo#244](https://github.com/pgsty/silo/pull/244), [pgsty/silo#258](https://github.com/pgsty/silo/pull/258)
+Merged PRs: [pgsty/silo#44](https://github.com/pgsty/silo/pull/44), [pgsty/silo#45](https://github.com/pgsty/silo/pull/45), [pgsty/silo#56](https://github.com/pgsty/silo/pull/56), [pgsty/silo#66](https://github.com/pgsty/silo/pull/66), [pgsty/silo#69](https://github.com/pgsty/silo/pull/69), [pgsty/silo#70](https://github.com/pgsty/silo/pull/70), [pgsty/silo#72](https://github.com/pgsty/silo/pull/72), [pgsty/silo#73](https://github.com/pgsty/silo/pull/73), [pgsty/silo#74](https://github.com/pgsty/silo/pull/74), [pgsty/silo#80](https://github.com/pgsty/silo/pull/80), [pgsty/silo#81](https://github.com/pgsty/silo/pull/81), [pgsty/silo#85](https://github.com/pgsty/silo/pull/85), [pgsty/silo#86](https://github.com/pgsty/silo/pull/86), [pgsty/silo#87](https://github.com/pgsty/silo/pull/87), [pgsty/silo#88](https://github.com/pgsty/silo/pull/88), [pgsty/silo#89](https://github.com/pgsty/silo/pull/89), [pgsty/silo#90](https://github.com/pgsty/silo/pull/90), [pgsty/silo#91](https://github.com/pgsty/silo/pull/91), [pgsty/silo#92](https://github.com/pgsty/silo/pull/92), [pgsty/silo#93](https://github.com/pgsty/silo/pull/93), [pgsty/silo#94](https://github.com/pgsty/silo/pull/94), [pgsty/silo#95](https://github.com/pgsty/silo/pull/95), [pgsty/silo#96](https://github.com/pgsty/silo/pull/96), [pgsty/silo#97](https://github.com/pgsty/silo/pull/97), [pgsty/silo#98](https://github.com/pgsty/silo/pull/98), [pgsty/silo#101](https://github.com/pgsty/silo/pull/101), [pgsty/silo#103](https://github.com/pgsty/silo/pull/103), [pgsty/silo#104](https://github.com/pgsty/silo/pull/104), [pgsty/silo#121](https://github.com/pgsty/silo/pull/121), [pgsty/silo#122](https://github.com/pgsty/silo/pull/122), [pgsty/silo#123](https://github.com/pgsty/silo/pull/123), [pgsty/silo#124](https://github.com/pgsty/silo/pull/124), [pgsty/silo#126](https://github.com/pgsty/silo/pull/126), [pgsty/silo#127](https://github.com/pgsty/silo/pull/127), [pgsty/silo#128](https://github.com/pgsty/silo/pull/128), [pgsty/silo#129](https://github.com/pgsty/silo/pull/129), [pgsty/silo#130](https://github.com/pgsty/silo/pull/130), [pgsty/silo#131](https://github.com/pgsty/silo/pull/131), [pgsty/silo#134](https://github.com/pgsty/silo/pull/134), [pgsty/silo#135](https://github.com/pgsty/silo/pull/135), [pgsty/silo#138](https://github.com/pgsty/silo/pull/138), [pgsty/silo#140](https://github.com/pgsty/silo/pull/140), [pgsty/silo#142](https://github.com/pgsty/silo/pull/142), [pgsty/silo#143](https://github.com/pgsty/silo/pull/143), [pgsty/silo#145](https://github.com/pgsty/silo/pull/145), [pgsty/silo#146](https://github.com/pgsty/silo/pull/146), [pgsty/silo#149](https://github.com/pgsty/silo/pull/149), [pgsty/silo#156](https://github.com/pgsty/silo/pull/156), [pgsty/silo#157](https://github.com/pgsty/silo/pull/157), [pgsty/silo#159](https://github.com/pgsty/silo/pull/159), [pgsty/silo#161](https://github.com/pgsty/silo/pull/161), [pgsty/silo#162](https://github.com/pgsty/silo/pull/162), [pgsty/silo#163](https://github.com/pgsty/silo/pull/163), [pgsty/silo#164](https://github.com/pgsty/silo/pull/164), [pgsty/silo#173](https://github.com/pgsty/silo/pull/173), [pgsty/silo#174](https://github.com/pgsty/silo/pull/174), [pgsty/silo#175](https://github.com/pgsty/silo/pull/175), [pgsty/silo#177](https://github.com/pgsty/silo/pull/177), [pgsty/silo#178](https://github.com/pgsty/silo/pull/178), [pgsty/silo#179](https://github.com/pgsty/silo/pull/179), [pgsty/silo#180](https://github.com/pgsty/silo/pull/180), [pgsty/silo#181](https://github.com/pgsty/silo/pull/181), [pgsty/silo#182](https://github.com/pgsty/silo/pull/182), [pgsty/silo#188](https://github.com/pgsty/silo/pull/188), [pgsty/silo#189](https://github.com/pgsty/silo/pull/189), [pgsty/silo#190](https://github.com/pgsty/silo/pull/190), [pgsty/silo#191](https://github.com/pgsty/silo/pull/191), [pgsty/silo#192](https://github.com/pgsty/silo/pull/192), [pgsty/silo#193](https://github.com/pgsty/silo/pull/193), [pgsty/silo#194](https://github.com/pgsty/silo/pull/194), [pgsty/silo#196](https://github.com/pgsty/silo/pull/196), [pgsty/silo#205](https://github.com/pgsty/silo/pull/205), [pgsty/silo#206](https://github.com/pgsty/silo/pull/206), [pgsty/silo#207](https://github.com/pgsty/silo/pull/207), [pgsty/silo#208](https://github.com/pgsty/silo/pull/208), [pgsty/silo#209](https://github.com/pgsty/silo/pull/209), [pgsty/silo#211](https://github.com/pgsty/silo/pull/211), [pgsty/silo#212](https://github.com/pgsty/silo/pull/212), [pgsty/silo#213](https://github.com/pgsty/silo/pull/213), [pgsty/silo#214](https://github.com/pgsty/silo/pull/214), [pgsty/silo#216](https://github.com/pgsty/silo/pull/216), [pgsty/silo#234](https://github.com/pgsty/silo/pull/234), [pgsty/silo#235](https://github.com/pgsty/silo/pull/235), [pgsty/silo#237](https://github.com/pgsty/silo/pull/237), [pgsty/silo#238](https://github.com/pgsty/silo/pull/238), [pgsty/silo#239](https://github.com/pgsty/silo/pull/239), [pgsty/silo#242](https://github.com/pgsty/silo/pull/242), [pgsty/silo#243](https://github.com/pgsty/silo/pull/243), [pgsty/silo#244](https://github.com/pgsty/silo/pull/244), [pgsty/silo#258](https://github.com/pgsty/silo/pull/258), [pgsty/silo#267](https://github.com/pgsty/silo/pull/267), [pgsty/silo#276](https://github.com/pgsty/silo/pull/276), [pgsty/silo#295](https://github.com/pgsty/silo/pull/295)
PRs closed without merging: [pgsty/silo#155](https://github.com/pgsty/silo/pull/155), [pgsty/silo#195](https://github.com/pgsty/silo/pull/195)
-Closed issues: [pgsty/silo#22](https://github.com/pgsty/silo/issues/22), [pgsty/silo#23](https://github.com/pgsty/silo/issues/23), [pgsty/silo#24](https://github.com/pgsty/silo/issues/24), [pgsty/silo#25](https://github.com/pgsty/silo/issues/25), [pgsty/silo#26](https://github.com/pgsty/silo/issues/26), [pgsty/silo#27](https://github.com/pgsty/silo/issues/27), [pgsty/silo#28](https://github.com/pgsty/silo/issues/28), [pgsty/silo#46](https://github.com/pgsty/silo/issues/46), [pgsty/silo#47](https://github.com/pgsty/silo/issues/47), [pgsty/silo#48](https://github.com/pgsty/silo/issues/48), [pgsty/silo#49](https://github.com/pgsty/silo/issues/49), [pgsty/silo#50](https://github.com/pgsty/silo/issues/50), [pgsty/silo#52](https://github.com/pgsty/silo/issues/52), [pgsty/silo#53](https://github.com/pgsty/silo/issues/53), [pgsty/silo#55](https://github.com/pgsty/silo/issues/55), [pgsty/silo#63](https://github.com/pgsty/silo/issues/63), [pgsty/silo#64](https://github.com/pgsty/silo/issues/64), [pgsty/silo#65](https://github.com/pgsty/silo/issues/65), [pgsty/silo#67](https://github.com/pgsty/silo/issues/67), [pgsty/silo#68](https://github.com/pgsty/silo/issues/68), [pgsty/silo#75](https://github.com/pgsty/silo/issues/75), [pgsty/silo#76](https://github.com/pgsty/silo/issues/76), [pgsty/silo#77](https://github.com/pgsty/silo/issues/77), [pgsty/silo#78](https://github.com/pgsty/silo/issues/78), [pgsty/silo#82](https://github.com/pgsty/silo/issues/82), [pgsty/silo#83](https://github.com/pgsty/silo/issues/83), [pgsty/silo#84](https://github.com/pgsty/silo/issues/84), [pgsty/silo#99](https://github.com/pgsty/silo/issues/99), [pgsty/silo#100](https://github.com/pgsty/silo/issues/100), [pgsty/silo#102](https://github.com/pgsty/silo/issues/102), [pgsty/silo#105](https://github.com/pgsty/silo/issues/105), [pgsty/silo#109](https://github.com/pgsty/silo/issues/109), [pgsty/silo#110](https://github.com/pgsty/silo/issues/110), [pgsty/silo#111](https://github.com/pgsty/silo/issues/111), [pgsty/silo#112](https://github.com/pgsty/silo/issues/112), [pgsty/silo#113](https://github.com/pgsty/silo/issues/113), [pgsty/silo#114](https://github.com/pgsty/silo/issues/114), [pgsty/silo#115](https://github.com/pgsty/silo/issues/115), [pgsty/silo#116](https://github.com/pgsty/silo/issues/116), [pgsty/silo#117](https://github.com/pgsty/silo/issues/117), [pgsty/silo#118](https://github.com/pgsty/silo/issues/118), [pgsty/silo#119](https://github.com/pgsty/silo/issues/119), [pgsty/silo#120](https://github.com/pgsty/silo/issues/120), [pgsty/silo#133](https://github.com/pgsty/silo/issues/133), [pgsty/silo#136](https://github.com/pgsty/silo/issues/136), [pgsty/silo#137](https://github.com/pgsty/silo/issues/137), [pgsty/silo#139](https://github.com/pgsty/silo/issues/139), [pgsty/silo#141](https://github.com/pgsty/silo/issues/141), [pgsty/silo#144](https://github.com/pgsty/silo/issues/144), [pgsty/silo#147](https://github.com/pgsty/silo/issues/147), [pgsty/silo#148](https://github.com/pgsty/silo/issues/148), [pgsty/silo#158](https://github.com/pgsty/silo/issues/158), [pgsty/silo#165](https://github.com/pgsty/silo/issues/165), [pgsty/silo#166](https://github.com/pgsty/silo/issues/166), [pgsty/silo#167](https://github.com/pgsty/silo/issues/167), [pgsty/silo#168](https://github.com/pgsty/silo/issues/168), [pgsty/silo#169](https://github.com/pgsty/silo/issues/169), [pgsty/silo#170](https://github.com/pgsty/silo/issues/170), [pgsty/silo#171](https://github.com/pgsty/silo/issues/171), [pgsty/silo#199](https://github.com/pgsty/silo/issues/199), [pgsty/silo#200](https://github.com/pgsty/silo/issues/200), [pgsty/silo#201](https://github.com/pgsty/silo/issues/201), [pgsty/silo#202](https://github.com/pgsty/silo/issues/202), [pgsty/silo#203](https://github.com/pgsty/silo/issues/203), [pgsty/silo#204](https://github.com/pgsty/silo/issues/204), [pgsty/silo#218](https://github.com/pgsty/silo/issues/218), [pgsty/silo#246](https://github.com/pgsty/silo/issues/246)
+Closed issues: [pgsty/silo#22](https://github.com/pgsty/silo/issues/22), [pgsty/silo#23](https://github.com/pgsty/silo/issues/23), [pgsty/silo#24](https://github.com/pgsty/silo/issues/24), [pgsty/silo#25](https://github.com/pgsty/silo/issues/25), [pgsty/silo#26](https://github.com/pgsty/silo/issues/26), [pgsty/silo#27](https://github.com/pgsty/silo/issues/27), [pgsty/silo#28](https://github.com/pgsty/silo/issues/28), [pgsty/silo#46](https://github.com/pgsty/silo/issues/46), [pgsty/silo#47](https://github.com/pgsty/silo/issues/47), [pgsty/silo#48](https://github.com/pgsty/silo/issues/48), [pgsty/silo#49](https://github.com/pgsty/silo/issues/49), [pgsty/silo#50](https://github.com/pgsty/silo/issues/50), [pgsty/silo#52](https://github.com/pgsty/silo/issues/52), [pgsty/silo#53](https://github.com/pgsty/silo/issues/53), [pgsty/silo#55](https://github.com/pgsty/silo/issues/55), [pgsty/silo#63](https://github.com/pgsty/silo/issues/63), [pgsty/silo#64](https://github.com/pgsty/silo/issues/64), [pgsty/silo#65](https://github.com/pgsty/silo/issues/65), [pgsty/silo#67](https://github.com/pgsty/silo/issues/67), [pgsty/silo#68](https://github.com/pgsty/silo/issues/68), [pgsty/silo#75](https://github.com/pgsty/silo/issues/75), [pgsty/silo#76](https://github.com/pgsty/silo/issues/76), [pgsty/silo#77](https://github.com/pgsty/silo/issues/77), [pgsty/silo#78](https://github.com/pgsty/silo/issues/78), [pgsty/silo#82](https://github.com/pgsty/silo/issues/82), [pgsty/silo#83](https://github.com/pgsty/silo/issues/83), [pgsty/silo#84](https://github.com/pgsty/silo/issues/84), [pgsty/silo#99](https://github.com/pgsty/silo/issues/99), [pgsty/silo#100](https://github.com/pgsty/silo/issues/100), [pgsty/silo#102](https://github.com/pgsty/silo/issues/102), [pgsty/silo#105](https://github.com/pgsty/silo/issues/105), [pgsty/silo#109](https://github.com/pgsty/silo/issues/109), [pgsty/silo#110](https://github.com/pgsty/silo/issues/110), [pgsty/silo#111](https://github.com/pgsty/silo/issues/111), [pgsty/silo#112](https://github.com/pgsty/silo/issues/112), [pgsty/silo#113](https://github.com/pgsty/silo/issues/113), [pgsty/silo#114](https://github.com/pgsty/silo/issues/114), [pgsty/silo#115](https://github.com/pgsty/silo/issues/115), [pgsty/silo#116](https://github.com/pgsty/silo/issues/116), [pgsty/silo#117](https://github.com/pgsty/silo/issues/117), [pgsty/silo#118](https://github.com/pgsty/silo/issues/118), [pgsty/silo#119](https://github.com/pgsty/silo/issues/119), [pgsty/silo#120](https://github.com/pgsty/silo/issues/120), [pgsty/silo#133](https://github.com/pgsty/silo/issues/133), [pgsty/silo#136](https://github.com/pgsty/silo/issues/136), [pgsty/silo#137](https://github.com/pgsty/silo/issues/137), [pgsty/silo#139](https://github.com/pgsty/silo/issues/139), [pgsty/silo#141](https://github.com/pgsty/silo/issues/141), [pgsty/silo#144](https://github.com/pgsty/silo/issues/144), [pgsty/silo#147](https://github.com/pgsty/silo/issues/147), [pgsty/silo#148](https://github.com/pgsty/silo/issues/148), [pgsty/silo#158](https://github.com/pgsty/silo/issues/158), [pgsty/silo#165](https://github.com/pgsty/silo/issues/165), [pgsty/silo#166](https://github.com/pgsty/silo/issues/166), [pgsty/silo#167](https://github.com/pgsty/silo/issues/167), [pgsty/silo#168](https://github.com/pgsty/silo/issues/168), [pgsty/silo#169](https://github.com/pgsty/silo/issues/169), [pgsty/silo#170](https://github.com/pgsty/silo/issues/170), [pgsty/silo#171](https://github.com/pgsty/silo/issues/171), [pgsty/silo#199](https://github.com/pgsty/silo/issues/199), [pgsty/silo#200](https://github.com/pgsty/silo/issues/200), [pgsty/silo#201](https://github.com/pgsty/silo/issues/201), [pgsty/silo#202](https://github.com/pgsty/silo/issues/202), [pgsty/silo#203](https://github.com/pgsty/silo/issues/203), [pgsty/silo#204](https://github.com/pgsty/silo/issues/204), [pgsty/silo#218](https://github.com/pgsty/silo/issues/218), [pgsty/silo#246](https://github.com/pgsty/silo/issues/246), [pgsty/silo#284](https://github.com/pgsty/silo/issues/284), [pgsty/silo#297](https://github.com/pgsty/silo/issues/297), [pgsty/silo#298](https://github.com/pgsty/silo/issues/298), [pgsty/silo#299](https://github.com/pgsty/silo/issues/299), [pgsty/silo#300](https://github.com/pgsty/silo/issues/300), [pgsty/silo#301](https://github.com/pgsty/silo/issues/301), [pgsty/silo#302](https://github.com/pgsty/silo/issues/302), [pgsty/silo#303](https://github.com/pgsty/silo/issues/303), [pgsty/silo#304](https://github.com/pgsty/silo/issues/304), [pgsty/silo#305](https://github.com/pgsty/silo/issues/305), [pgsty/silo#306](https://github.com/pgsty/silo/issues/306), [pgsty/silo#307](https://github.com/pgsty/silo/issues/307), [pgsty/silo#308](https://github.com/pgsty/silo/issues/308), [pgsty/silo#309](https://github.com/pgsty/silo/issues/309), [pgsty/silo#310](https://github.com/pgsty/silo/issues/310), [pgsty/silo#311](https://github.com/pgsty/silo/issues/311), [pgsty/silo#312](https://github.com/pgsty/silo/issues/312), [pgsty/silo#313](https://github.com/pgsty/silo/issues/313), [pgsty/silo#314](https://github.com/pgsty/silo/issues/314), [pgsty/silo#315](https://github.com/pgsty/silo/issues/315), [pgsty/silo#316](https://github.com/pgsty/silo/issues/316), [pgsty/silo#317](https://github.com/pgsty/silo/issues/317), [pgsty/silo#318](https://github.com/pgsty/silo/issues/318), [pgsty/silo#319](https://github.com/pgsty/silo/issues/319), [pgsty/silo#320](https://github.com/pgsty/silo/issues/320), [pgsty/silo#321](https://github.com/pgsty/silo/issues/321), [pgsty/silo#322](https://github.com/pgsty/silo/issues/322), [pgsty/silo#323](https://github.com/pgsty/silo/issues/323), [pgsty/silo#324](https://github.com/pgsty/silo/issues/324), [pgsty/silo#325](https://github.com/pgsty/silo/issues/325), [pgsty/silo#326](https://github.com/pgsty/silo/issues/326), [pgsty/silo#327](https://github.com/pgsty/silo/issues/327)
Open issues: [pgsty/silo#217](https://github.com/pgsty/silo/issues/217)
-Merged PRs: [pgsty/silo-console#9](https://github.com/pgsty/silo-console/pull/9), [pgsty/silo-console#10](https://github.com/pgsty/silo-console/pull/10), [pgsty/silo-console#11](https://github.com/pgsty/silo-console/pull/11), [pgsty/silo-console#38](https://github.com/pgsty/silo-console/pull/38), [pgsty/silo-console#39](https://github.com/pgsty/silo-console/pull/39), [pgsty/silo-console#40](https://github.com/pgsty/silo-console/pull/40), [pgsty/silo-console#41](https://github.com/pgsty/silo-console/pull/41), [pgsty/silo-console#42](https://github.com/pgsty/silo-console/pull/42), [pgsty/silo-console#43](https://github.com/pgsty/silo-console/pull/43), [pgsty/silo-console#44](https://github.com/pgsty/silo-console/pull/44), [pgsty/silo-console#45](https://github.com/pgsty/silo-console/pull/45), [pgsty/silo-console#46](https://github.com/pgsty/silo-console/pull/46), [pgsty/silo-console#47](https://github.com/pgsty/silo-console/pull/47), [pgsty/silo-console#48](https://github.com/pgsty/silo-console/pull/48), [pgsty/silo-console#49](https://github.com/pgsty/silo-console/pull/49), [pgsty/silo-console#50](https://github.com/pgsty/silo-console/pull/50), [pgsty/silo-console#51](https://github.com/pgsty/silo-console/pull/51), [pgsty/silo-console#53](https://github.com/pgsty/silo-console/pull/53), [pgsty/silo-console#54](https://github.com/pgsty/silo-console/pull/54), [pgsty/silo-console#55](https://github.com/pgsty/silo-console/pull/55), [pgsty/silo-console#56](https://github.com/pgsty/silo-console/pull/56), [pgsty/silo-console#57](https://github.com/pgsty/silo-console/pull/57), [pgsty/silo-console#58](https://github.com/pgsty/silo-console/pull/58), [pgsty/silo-console#59](https://github.com/pgsty/silo-console/pull/59), [pgsty/silo-console#60](https://github.com/pgsty/silo-console/pull/60), [pgsty/silo-console#61](https://github.com/pgsty/silo-console/pull/61), [pgsty/silo-console#62](https://github.com/pgsty/silo-console/pull/62), [pgsty/silo-console#64](https://github.com/pgsty/silo-console/pull/64), [pgsty/silo-console#65](https://github.com/pgsty/silo-console/pull/65), [pgsty/silo-console#66](https://github.com/pgsty/silo-console/pull/66), [pgsty/silo-console#67](https://github.com/pgsty/silo-console/pull/67), [pgsty/silo-console#68](https://github.com/pgsty/silo-console/pull/68), [pgsty/silo-console#69](https://github.com/pgsty/silo-console/pull/69)
+Merged PRs: [pgsty/silo-console#9](https://github.com/pgsty/silo-console/pull/9), [pgsty/silo-console#10](https://github.com/pgsty/silo-console/pull/10), [pgsty/silo-console#11](https://github.com/pgsty/silo-console/pull/11), [pgsty/silo-console#38](https://github.com/pgsty/silo-console/pull/38), [pgsty/silo-console#39](https://github.com/pgsty/silo-console/pull/39), [pgsty/silo-console#40](https://github.com/pgsty/silo-console/pull/40), [pgsty/silo-console#41](https://github.com/pgsty/silo-console/pull/41), [pgsty/silo-console#42](https://github.com/pgsty/silo-console/pull/42), [pgsty/silo-console#43](https://github.com/pgsty/silo-console/pull/43), [pgsty/silo-console#44](https://github.com/pgsty/silo-console/pull/44), [pgsty/silo-console#45](https://github.com/pgsty/silo-console/pull/45), [pgsty/silo-console#46](https://github.com/pgsty/silo-console/pull/46), [pgsty/silo-console#47](https://github.com/pgsty/silo-console/pull/47), [pgsty/silo-console#48](https://github.com/pgsty/silo-console/pull/48), [pgsty/silo-console#49](https://github.com/pgsty/silo-console/pull/49), [pgsty/silo-console#50](https://github.com/pgsty/silo-console/pull/50), [pgsty/silo-console#51](https://github.com/pgsty/silo-console/pull/51), [pgsty/silo-console#53](https://github.com/pgsty/silo-console/pull/53), [pgsty/silo-console#54](https://github.com/pgsty/silo-console/pull/54), [pgsty/silo-console#55](https://github.com/pgsty/silo-console/pull/55), [pgsty/silo-console#56](https://github.com/pgsty/silo-console/pull/56), [pgsty/silo-console#57](https://github.com/pgsty/silo-console/pull/57), [pgsty/silo-console#58](https://github.com/pgsty/silo-console/pull/58), [pgsty/silo-console#59](https://github.com/pgsty/silo-console/pull/59), [pgsty/silo-console#60](https://github.com/pgsty/silo-console/pull/60), [pgsty/silo-console#61](https://github.com/pgsty/silo-console/pull/61), [pgsty/silo-console#62](https://github.com/pgsty/silo-console/pull/62), [pgsty/silo-console#64](https://github.com/pgsty/silo-console/pull/64), [pgsty/silo-console#65](https://github.com/pgsty/silo-console/pull/65), [pgsty/silo-console#66](https://github.com/pgsty/silo-console/pull/66), [pgsty/silo-console#67](https://github.com/pgsty/silo-console/pull/67), [pgsty/silo-console#68](https://github.com/pgsty/silo-console/pull/68), [pgsty/silo-console#69](https://github.com/pgsty/silo-console/pull/69), [pgsty/silo-console#71](https://github.com/pgsty/silo-console/pull/71), [pgsty/silo-console#74](https://github.com/pgsty/silo-console/pull/74), [pgsty/silo-console#79](https://github.com/pgsty/silo-console/pull/79), [pgsty/silo-console#80](https://github.com/pgsty/silo-console/pull/80), [pgsty/silo-console#81](https://github.com/pgsty/silo-console/pull/81), [pgsty/silo-console#82](https://github.com/pgsty/silo-console/pull/82), [pgsty/silo-console#84](https://github.com/pgsty/silo-console/pull/84), [pgsty/silo-console#85](https://github.com/pgsty/silo-console/pull/85), [pgsty/silo-console#86](https://github.com/pgsty/silo-console/pull/86)
-Closed issues: [pgsty/silo-console#1](https://github.com/pgsty/silo-console/issues/1), [pgsty/silo-console#2](https://github.com/pgsty/silo-console/issues/2), [pgsty/silo-console#3](https://github.com/pgsty/silo-console/issues/3), [pgsty/silo-console#4](https://github.com/pgsty/silo-console/issues/4), [pgsty/silo-console#5](https://github.com/pgsty/silo-console/issues/5), [pgsty/silo-console#6](https://github.com/pgsty/silo-console/issues/6), [pgsty/silo-console#7](https://github.com/pgsty/silo-console/issues/7), [pgsty/silo-console#8](https://github.com/pgsty/silo-console/issues/8), [pgsty/silo-console#12](https://github.com/pgsty/silo-console/issues/12), [pgsty/silo-console#13](https://github.com/pgsty/silo-console/issues/13), [pgsty/silo-console#14](https://github.com/pgsty/silo-console/issues/14), [pgsty/silo-console#15](https://github.com/pgsty/silo-console/issues/15), [pgsty/silo-console#16](https://github.com/pgsty/silo-console/issues/16), [pgsty/silo-console#17](https://github.com/pgsty/silo-console/issues/17), [pgsty/silo-console#18](https://github.com/pgsty/silo-console/issues/18), [pgsty/silo-console#19](https://github.com/pgsty/silo-console/issues/19), [pgsty/silo-console#20](https://github.com/pgsty/silo-console/issues/20), [pgsty/silo-console#21](https://github.com/pgsty/silo-console/issues/21), [pgsty/silo-console#22](https://github.com/pgsty/silo-console/issues/22), [pgsty/silo-console#23](https://github.com/pgsty/silo-console/issues/23), [pgsty/silo-console#24](https://github.com/pgsty/silo-console/issues/24), [pgsty/silo-console#25](https://github.com/pgsty/silo-console/issues/25), [pgsty/silo-console#26](https://github.com/pgsty/silo-console/issues/26), [pgsty/silo-console#27](https://github.com/pgsty/silo-console/issues/27), [pgsty/silo-console#28](https://github.com/pgsty/silo-console/issues/28), [pgsty/silo-console#29](https://github.com/pgsty/silo-console/issues/29), [pgsty/silo-console#30](https://github.com/pgsty/silo-console/issues/30), [pgsty/silo-console#31](https://github.com/pgsty/silo-console/issues/31), [pgsty/silo-console#32](https://github.com/pgsty/silo-console/issues/32), [pgsty/silo-console#33](https://github.com/pgsty/silo-console/issues/33), [pgsty/silo-console#34](https://github.com/pgsty/silo-console/issues/34), [pgsty/silo-console#35](https://github.com/pgsty/silo-console/issues/35), [pgsty/silo-console#36](https://github.com/pgsty/silo-console/issues/36), [pgsty/silo-console#37](https://github.com/pgsty/silo-console/issues/37)
+Closed issues: [pgsty/silo-console#1](https://github.com/pgsty/silo-console/issues/1), [pgsty/silo-console#2](https://github.com/pgsty/silo-console/issues/2), [pgsty/silo-console#3](https://github.com/pgsty/silo-console/issues/3), [pgsty/silo-console#4](https://github.com/pgsty/silo-console/issues/4), [pgsty/silo-console#5](https://github.com/pgsty/silo-console/issues/5), [pgsty/silo-console#6](https://github.com/pgsty/silo-console/issues/6), [pgsty/silo-console#7](https://github.com/pgsty/silo-console/issues/7), [pgsty/silo-console#8](https://github.com/pgsty/silo-console/issues/8), [pgsty/silo-console#12](https://github.com/pgsty/silo-console/issues/12), [pgsty/silo-console#13](https://github.com/pgsty/silo-console/issues/13), [pgsty/silo-console#14](https://github.com/pgsty/silo-console/issues/14), [pgsty/silo-console#15](https://github.com/pgsty/silo-console/issues/15), [pgsty/silo-console#16](https://github.com/pgsty/silo-console/issues/16), [pgsty/silo-console#17](https://github.com/pgsty/silo-console/issues/17), [pgsty/silo-console#18](https://github.com/pgsty/silo-console/issues/18), [pgsty/silo-console#19](https://github.com/pgsty/silo-console/issues/19), [pgsty/silo-console#20](https://github.com/pgsty/silo-console/issues/20), [pgsty/silo-console#21](https://github.com/pgsty/silo-console/issues/21), [pgsty/silo-console#22](https://github.com/pgsty/silo-console/issues/22), [pgsty/silo-console#23](https://github.com/pgsty/silo-console/issues/23), [pgsty/silo-console#24](https://github.com/pgsty/silo-console/issues/24), [pgsty/silo-console#25](https://github.com/pgsty/silo-console/issues/25), [pgsty/silo-console#26](https://github.com/pgsty/silo-console/issues/26), [pgsty/silo-console#27](https://github.com/pgsty/silo-console/issues/27), [pgsty/silo-console#28](https://github.com/pgsty/silo-console/issues/28), [pgsty/silo-console#29](https://github.com/pgsty/silo-console/issues/29), [pgsty/silo-console#30](https://github.com/pgsty/silo-console/issues/30), [pgsty/silo-console#31](https://github.com/pgsty/silo-console/issues/31), [pgsty/silo-console#32](https://github.com/pgsty/silo-console/issues/32), [pgsty/silo-console#33](https://github.com/pgsty/silo-console/issues/33), [pgsty/silo-console#34](https://github.com/pgsty/silo-console/issues/34), [pgsty/silo-console#35](https://github.com/pgsty/silo-console/issues/35), [pgsty/silo-console#36](https://github.com/pgsty/silo-console/issues/36), [pgsty/silo-console#37](https://github.com/pgsty/silo-console/issues/37), [pgsty/silo-console#73](https://github.com/pgsty/silo-console/issues/73), [pgsty/silo-console#75](https://github.com/pgsty/silo-console/issues/75), [pgsty/silo-console#76](https://github.com/pgsty/silo-console/issues/76), [pgsty/silo-console#77](https://github.com/pgsty/silo-console/issues/77), [pgsty/silo-console#78](https://github.com/pgsty/silo-console/issues/78)
-Merged PRs: [pgsty/mc#1](https://github.com/pgsty/mc/pull/1), [pgsty/mc#2](https://github.com/pgsty/mc/pull/2), [pgsty/mc#3](https://github.com/pgsty/mc/pull/3), [pgsty/mc#4](https://github.com/pgsty/mc/pull/4), [pgsty/mc#8](https://github.com/pgsty/mc/pull/8), [pgsty/mc#9](https://github.com/pgsty/mc/pull/9), [pgsty/mc#10](https://github.com/pgsty/mc/pull/10), [pgsty/mc#11](https://github.com/pgsty/mc/pull/11), [pgsty/mc#13](https://github.com/pgsty/mc/pull/13), [pgsty/mc#22](https://github.com/pgsty/mc/pull/22), [pgsty/mc#24](https://github.com/pgsty/mc/pull/24), [pgsty/mc#27](https://github.com/pgsty/mc/pull/27), [pgsty/mc#32](https://github.com/pgsty/mc/pull/32), [pgsty/mc#33](https://github.com/pgsty/mc/pull/33), [pgsty/mc#34](https://github.com/pgsty/mc/pull/34), [pgsty/mc#35](https://github.com/pgsty/mc/pull/35), [pgsty/mc#36](https://github.com/pgsty/mc/pull/36), [pgsty/mc#37](https://github.com/pgsty/mc/pull/37), [pgsty/mc#38](https://github.com/pgsty/mc/pull/38), [pgsty/mc#39](https://github.com/pgsty/mc/pull/39), [pgsty/mc#40](https://github.com/pgsty/mc/pull/40), [pgsty/mc#41](https://github.com/pgsty/mc/pull/41), [pgsty/mc#42](https://github.com/pgsty/mc/pull/42), [pgsty/mc#43](https://github.com/pgsty/mc/pull/43), [pgsty/mc#46](https://github.com/pgsty/mc/pull/46), [pgsty/mc#47](https://github.com/pgsty/mc/pull/47), [pgsty/mc#55](https://github.com/pgsty/mc/pull/55)
+Merged PRs: [pgsty/mc#1](https://github.com/pgsty/mc/pull/1), [pgsty/mc#2](https://github.com/pgsty/mc/pull/2), [pgsty/mc#3](https://github.com/pgsty/mc/pull/3), [pgsty/mc#4](https://github.com/pgsty/mc/pull/4), [pgsty/mc#8](https://github.com/pgsty/mc/pull/8), [pgsty/mc#9](https://github.com/pgsty/mc/pull/9), [pgsty/mc#10](https://github.com/pgsty/mc/pull/10), [pgsty/mc#11](https://github.com/pgsty/mc/pull/11), [pgsty/mc#13](https://github.com/pgsty/mc/pull/13), [pgsty/mc#22](https://github.com/pgsty/mc/pull/22), [pgsty/mc#24](https://github.com/pgsty/mc/pull/24), [pgsty/mc#27](https://github.com/pgsty/mc/pull/27), [pgsty/mc#32](https://github.com/pgsty/mc/pull/32), [pgsty/mc#33](https://github.com/pgsty/mc/pull/33), [pgsty/mc#34](https://github.com/pgsty/mc/pull/34), [pgsty/mc#35](https://github.com/pgsty/mc/pull/35), [pgsty/mc#36](https://github.com/pgsty/mc/pull/36), [pgsty/mc#37](https://github.com/pgsty/mc/pull/37), [pgsty/mc#38](https://github.com/pgsty/mc/pull/38), [pgsty/mc#39](https://github.com/pgsty/mc/pull/39), [pgsty/mc#40](https://github.com/pgsty/mc/pull/40), [pgsty/mc#41](https://github.com/pgsty/mc/pull/41), [pgsty/mc#42](https://github.com/pgsty/mc/pull/42), [pgsty/mc#43](https://github.com/pgsty/mc/pull/43), [pgsty/mc#46](https://github.com/pgsty/mc/pull/46), [pgsty/mc#47](https://github.com/pgsty/mc/pull/47), [pgsty/mc#55](https://github.com/pgsty/mc/pull/55), [pgsty/mc#74](https://github.com/pgsty/mc/pull/74), [pgsty/mc#76](https://github.com/pgsty/mc/pull/76), [pgsty/mc#77](https://github.com/pgsty/mc/pull/77)
-Closed issues: [pgsty/mc#5](https://github.com/pgsty/mc/issues/5), [pgsty/mc#6](https://github.com/pgsty/mc/issues/6), [pgsty/mc#7](https://github.com/pgsty/mc/issues/7), [pgsty/mc#12](https://github.com/pgsty/mc/issues/12), [pgsty/mc#14](https://github.com/pgsty/mc/issues/14), [pgsty/mc#15](https://github.com/pgsty/mc/issues/15), [pgsty/mc#16](https://github.com/pgsty/mc/issues/16), [pgsty/mc#17](https://github.com/pgsty/mc/issues/17), [pgsty/mc#18](https://github.com/pgsty/mc/issues/18), [pgsty/mc#19](https://github.com/pgsty/mc/issues/19), [pgsty/mc#20](https://github.com/pgsty/mc/issues/20), [pgsty/mc#21](https://github.com/pgsty/mc/issues/21), [pgsty/mc#23](https://github.com/pgsty/mc/issues/23), [pgsty/mc#25](https://github.com/pgsty/mc/issues/25), [pgsty/mc#28](https://github.com/pgsty/mc/issues/28), [pgsty/mc#29](https://github.com/pgsty/mc/issues/29), [pgsty/mc#30](https://github.com/pgsty/mc/issues/30), [pgsty/mc#31](https://github.com/pgsty/mc/issues/31), [pgsty/mc#50](https://github.com/pgsty/mc/issues/50), [pgsty/mc#51](https://github.com/pgsty/mc/issues/51), [pgsty/mc#52](https://github.com/pgsty/mc/issues/52), [pgsty/mc#53](https://github.com/pgsty/mc/issues/53), [pgsty/mc#54](https://github.com/pgsty/mc/issues/54)
+Closed issues: [pgsty/mc#5](https://github.com/pgsty/mc/issues/5), [pgsty/mc#6](https://github.com/pgsty/mc/issues/6), [pgsty/mc#7](https://github.com/pgsty/mc/issues/7), [pgsty/mc#12](https://github.com/pgsty/mc/issues/12), [pgsty/mc#14](https://github.com/pgsty/mc/issues/14), [pgsty/mc#15](https://github.com/pgsty/mc/issues/15), [pgsty/mc#16](https://github.com/pgsty/mc/issues/16), [pgsty/mc#17](https://github.com/pgsty/mc/issues/17), [pgsty/mc#18](https://github.com/pgsty/mc/issues/18), [pgsty/mc#19](https://github.com/pgsty/mc/issues/19), [pgsty/mc#20](https://github.com/pgsty/mc/issues/20), [pgsty/mc#21](https://github.com/pgsty/mc/issues/21), [pgsty/mc#23](https://github.com/pgsty/mc/issues/23), [pgsty/mc#25](https://github.com/pgsty/mc/issues/25), [pgsty/mc#28](https://github.com/pgsty/mc/issues/28), [pgsty/mc#29](https://github.com/pgsty/mc/issues/29), [pgsty/mc#30](https://github.com/pgsty/mc/issues/30), [pgsty/mc#31](https://github.com/pgsty/mc/issues/31), [pgsty/mc#50](https://github.com/pgsty/mc/issues/50), [pgsty/mc#51](https://github.com/pgsty/mc/issues/51), [pgsty/mc#52](https://github.com/pgsty/mc/issues/52), [pgsty/mc#53](https://github.com/pgsty/mc/issues/53), [pgsty/mc#54](https://github.com/pgsty/mc/issues/54), [pgsty/mc#56](https://github.com/pgsty/mc/issues/56), [pgsty/mc#57](https://github.com/pgsty/mc/issues/57), [pgsty/mc#58](https://github.com/pgsty/mc/issues/58), [pgsty/mc#59](https://github.com/pgsty/mc/issues/59), [pgsty/mc#60](https://github.com/pgsty/mc/issues/60), [pgsty/mc#61](https://github.com/pgsty/mc/issues/61), [pgsty/mc#62](https://github.com/pgsty/mc/issues/62), [pgsty/mc#63](https://github.com/pgsty/mc/issues/63), [pgsty/mc#64](https://github.com/pgsty/mc/issues/64), [pgsty/mc#65](https://github.com/pgsty/mc/issues/65), [pgsty/mc#66](https://github.com/pgsty/mc/issues/66), [pgsty/mc#67](https://github.com/pgsty/mc/issues/67), [pgsty/mc#68](https://github.com/pgsty/mc/issues/68), [pgsty/mc#69](https://github.com/pgsty/mc/issues/69), [pgsty/mc#70](https://github.com/pgsty/mc/issues/70), [pgsty/mc#71](https://github.com/pgsty/mc/issues/71), [pgsty/mc#72](https://github.com/pgsty/mc/issues/72), [pgsty/mc#73](https://github.com/pgsty/mc/issues/73), [pgsty/mc#75](https://github.com/pgsty/mc/issues/75)
-Merged PRs: [pgsty/silo-pkg#1](https://github.com/pgsty/silo-pkg/pull/1), [pgsty/silo-pkg#2](https://github.com/pgsty/silo-pkg/pull/2), [pgsty/silo-pkg#3](https://github.com/pgsty/silo-pkg/pull/3), [pgsty/silo-pkg#4](https://github.com/pgsty/silo-pkg/pull/4), [pgsty/silo-pkg#5](https://github.com/pgsty/silo-pkg/pull/5), [pgsty/silo-pkg#6](https://github.com/pgsty/silo-pkg/pull/6), [pgsty/silo-pkg#7](https://github.com/pgsty/silo-pkg/pull/7), [pgsty/silo-pkg#8](https://github.com/pgsty/silo-pkg/pull/8), [pgsty/silo-pkg#9](https://github.com/pgsty/silo-pkg/pull/9), [pgsty/silo-pkg#10](https://github.com/pgsty/silo-pkg/pull/10), [pgsty/silo-pkg#12](https://github.com/pgsty/silo-pkg/pull/12)
+Merged PRs: [pgsty/silo-pkg#1](https://github.com/pgsty/silo-pkg/pull/1), [pgsty/silo-pkg#2](https://github.com/pgsty/silo-pkg/pull/2), [pgsty/silo-pkg#3](https://github.com/pgsty/silo-pkg/pull/3), [pgsty/silo-pkg#4](https://github.com/pgsty/silo-pkg/pull/4), [pgsty/silo-pkg#5](https://github.com/pgsty/silo-pkg/pull/5), [pgsty/silo-pkg#6](https://github.com/pgsty/silo-pkg/pull/6), [pgsty/silo-pkg#7](https://github.com/pgsty/silo-pkg/pull/7), [pgsty/silo-pkg#8](https://github.com/pgsty/silo-pkg/pull/8), [pgsty/silo-pkg#9](https://github.com/pgsty/silo-pkg/pull/9), [pgsty/silo-pkg#10](https://github.com/pgsty/silo-pkg/pull/10), [pgsty/silo-pkg#12](https://github.com/pgsty/silo-pkg/pull/12), [pgsty/silo-pkg#14](https://github.com/pgsty/silo-pkg/pull/14)
+
+Closed issues: [pgsty/silo-pkg#13](https://github.com/pgsty/silo-pkg/issues/13)
Merged PRs: [pgsty/kes#1](https://github.com/pgsty/kes/pull/1)
-Merged PRs: [pgsty/silo.pgsty.com#2](https://github.com/pgsty/silo.pgsty.com/pull/2), [pgsty/silo.pgsty.com#3](https://github.com/pgsty/silo.pgsty.com/pull/3), [pgsty/silo.pgsty.com#5](https://github.com/pgsty/silo.pgsty.com/pull/5), [pgsty/silo.pgsty.com#6](https://github.com/pgsty/silo.pgsty.com/pull/6), [pgsty/silo.pgsty.com#7](https://github.com/pgsty/silo.pgsty.com/pull/7), [pgsty/silo.pgsty.com#8](https://github.com/pgsty/silo.pgsty.com/pull/8), [pgsty/silo.pgsty.com#9](https://github.com/pgsty/silo.pgsty.com/pull/9), [pgsty/silo.pgsty.com#10](https://github.com/pgsty/silo.pgsty.com/pull/10), [pgsty/silo.pgsty.com#11](https://github.com/pgsty/silo.pgsty.com/pull/11), [pgsty/silo.pgsty.com#13](https://github.com/pgsty/silo.pgsty.com/pull/13), [pgsty/silo.pgsty.com#14](https://github.com/pgsty/silo.pgsty.com/pull/14), [pgsty/silo.pgsty.com#15](https://github.com/pgsty/silo.pgsty.com/pull/15), [pgsty/silo.pgsty.com#16](https://github.com/pgsty/silo.pgsty.com/pull/16), [pgsty/silo.pgsty.com#17](https://github.com/pgsty/silo.pgsty.com/pull/17), [pgsty/silo.pgsty.com#19](https://github.com/pgsty/silo.pgsty.com/pull/19), [pgsty/silo.pgsty.com#20](https://github.com/pgsty/silo.pgsty.com/pull/20), [pgsty/silo.pgsty.com#21](https://github.com/pgsty/silo.pgsty.com/pull/21), [pgsty/silo.pgsty.com#22](https://github.com/pgsty/silo.pgsty.com/pull/22), [pgsty/silo.pgsty.com#23](https://github.com/pgsty/silo.pgsty.com/pull/23), [pgsty/silo.pgsty.com#24](https://github.com/pgsty/silo.pgsty.com/pull/24), [pgsty/silo.pgsty.com#25](https://github.com/pgsty/silo.pgsty.com/pull/25), [pgsty/silo.pgsty.com#26](https://github.com/pgsty/silo.pgsty.com/pull/26), [pgsty/silo.pgsty.com#27](https://github.com/pgsty/silo.pgsty.com/pull/27), [pgsty/silo.pgsty.com#28](https://github.com/pgsty/silo.pgsty.com/pull/28), [pgsty/silo.pgsty.com#29](https://github.com/pgsty/silo.pgsty.com/pull/29), [pgsty/silo.pgsty.com#30](https://github.com/pgsty/silo.pgsty.com/pull/30), [pgsty/silo.pgsty.com#31](https://github.com/pgsty/silo.pgsty.com/pull/31), [pgsty/silo.pgsty.com#32](https://github.com/pgsty/silo.pgsty.com/pull/32), [pgsty/silo.pgsty.com#33](https://github.com/pgsty/silo.pgsty.com/pull/33), [pgsty/silo.pgsty.com#34](https://github.com/pgsty/silo.pgsty.com/pull/34), [pgsty/silo.pgsty.com#35](https://github.com/pgsty/silo.pgsty.com/pull/35), [pgsty/silo.pgsty.com#37](https://github.com/pgsty/silo.pgsty.com/pull/37), [pgsty/silo.pgsty.com#38](https://github.com/pgsty/silo.pgsty.com/pull/38), [pgsty/silo.pgsty.com#39](https://github.com/pgsty/silo.pgsty.com/pull/39), [pgsty/silo.pgsty.com#40](https://github.com/pgsty/silo.pgsty.com/pull/40), [pgsty/silo.pgsty.com#41](https://github.com/pgsty/silo.pgsty.com/pull/41), [pgsty/silo.pgsty.com#42](https://github.com/pgsty/silo.pgsty.com/pull/42), [pgsty/silo.pgsty.com#43](https://github.com/pgsty/silo.pgsty.com/pull/43), [pgsty/silo.pgsty.com#44](https://github.com/pgsty/silo.pgsty.com/pull/44), [pgsty/silo.pgsty.com#45](https://github.com/pgsty/silo.pgsty.com/pull/45), [pgsty/silo.pgsty.com#46](https://github.com/pgsty/silo.pgsty.com/pull/46), [pgsty/silo.pgsty.com#47](https://github.com/pgsty/silo.pgsty.com/pull/47)
+Merged PRs: [pgsty/silo.pgsty.com#2](https://github.com/pgsty/silo.pgsty.com/pull/2), [pgsty/silo.pgsty.com#3](https://github.com/pgsty/silo.pgsty.com/pull/3), [pgsty/silo.pgsty.com#5](https://github.com/pgsty/silo.pgsty.com/pull/5), [pgsty/silo.pgsty.com#6](https://github.com/pgsty/silo.pgsty.com/pull/6), [pgsty/silo.pgsty.com#7](https://github.com/pgsty/silo.pgsty.com/pull/7), [pgsty/silo.pgsty.com#8](https://github.com/pgsty/silo.pgsty.com/pull/8), [pgsty/silo.pgsty.com#9](https://github.com/pgsty/silo.pgsty.com/pull/9), [pgsty/silo.pgsty.com#10](https://github.com/pgsty/silo.pgsty.com/pull/10), [pgsty/silo.pgsty.com#11](https://github.com/pgsty/silo.pgsty.com/pull/11), [pgsty/silo.pgsty.com#13](https://github.com/pgsty/silo.pgsty.com/pull/13), [pgsty/silo.pgsty.com#14](https://github.com/pgsty/silo.pgsty.com/pull/14), [pgsty/silo.pgsty.com#15](https://github.com/pgsty/silo.pgsty.com/pull/15), [pgsty/silo.pgsty.com#16](https://github.com/pgsty/silo.pgsty.com/pull/16), [pgsty/silo.pgsty.com#17](https://github.com/pgsty/silo.pgsty.com/pull/17), [pgsty/silo.pgsty.com#19](https://github.com/pgsty/silo.pgsty.com/pull/19), [pgsty/silo.pgsty.com#20](https://github.com/pgsty/silo.pgsty.com/pull/20), [pgsty/silo.pgsty.com#21](https://github.com/pgsty/silo.pgsty.com/pull/21), [pgsty/silo.pgsty.com#22](https://github.com/pgsty/silo.pgsty.com/pull/22), [pgsty/silo.pgsty.com#23](https://github.com/pgsty/silo.pgsty.com/pull/23), [pgsty/silo.pgsty.com#24](https://github.com/pgsty/silo.pgsty.com/pull/24), [pgsty/silo.pgsty.com#25](https://github.com/pgsty/silo.pgsty.com/pull/25), [pgsty/silo.pgsty.com#26](https://github.com/pgsty/silo.pgsty.com/pull/26), [pgsty/silo.pgsty.com#27](https://github.com/pgsty/silo.pgsty.com/pull/27), [pgsty/silo.pgsty.com#28](https://github.com/pgsty/silo.pgsty.com/pull/28), [pgsty/silo.pgsty.com#29](https://github.com/pgsty/silo.pgsty.com/pull/29), [pgsty/silo.pgsty.com#30](https://github.com/pgsty/silo.pgsty.com/pull/30), [pgsty/silo.pgsty.com#31](https://github.com/pgsty/silo.pgsty.com/pull/31), [pgsty/silo.pgsty.com#32](https://github.com/pgsty/silo.pgsty.com/pull/32), [pgsty/silo.pgsty.com#33](https://github.com/pgsty/silo.pgsty.com/pull/33), [pgsty/silo.pgsty.com#34](https://github.com/pgsty/silo.pgsty.com/pull/34), [pgsty/silo.pgsty.com#35](https://github.com/pgsty/silo.pgsty.com/pull/35), [pgsty/silo.pgsty.com#37](https://github.com/pgsty/silo.pgsty.com/pull/37), [pgsty/silo.pgsty.com#38](https://github.com/pgsty/silo.pgsty.com/pull/38), [pgsty/silo.pgsty.com#39](https://github.com/pgsty/silo.pgsty.com/pull/39), [pgsty/silo.pgsty.com#40](https://github.com/pgsty/silo.pgsty.com/pull/40), [pgsty/silo.pgsty.com#41](https://github.com/pgsty/silo.pgsty.com/pull/41), [pgsty/silo.pgsty.com#42](https://github.com/pgsty/silo.pgsty.com/pull/42), [pgsty/silo.pgsty.com#43](https://github.com/pgsty/silo.pgsty.com/pull/43), [pgsty/silo.pgsty.com#44](https://github.com/pgsty/silo.pgsty.com/pull/44), [pgsty/silo.pgsty.com#45](https://github.com/pgsty/silo.pgsty.com/pull/45), [pgsty/silo.pgsty.com#46](https://github.com/pgsty/silo.pgsty.com/pull/46), [pgsty/silo.pgsty.com#47](https://github.com/pgsty/silo.pgsty.com/pull/47), [pgsty/silo.pgsty.com#48](https://github.com/pgsty/silo.pgsty.com/pull/48), [pgsty/silo.pgsty.com#49](https://github.com/pgsty/silo.pgsty.com/pull/49), [pgsty/silo.pgsty.com#50](https://github.com/pgsty/silo.pgsty.com/pull/50), [pgsty/silo.pgsty.com#51](https://github.com/pgsty/silo.pgsty.com/pull/51), [pgsty/silo.pgsty.com#52](https://github.com/pgsty/silo.pgsty.com/pull/52), [pgsty/silo.pgsty.com#53](https://github.com/pgsty/silo.pgsty.com/pull/53)
PRs closed without merging: [pgsty/silo.pgsty.com#36](https://github.com/pgsty/silo.pgsty.com/pull/36)
+
+@botdeniska — complete issue / PR record
+
+Merged PRs: [pgsty/silo#253](https://github.com/pgsty/silo/pull/253), [pgsty/silo#255](https://github.com/pgsty/silo/pull/255), [pgsty/silo#257](https://github.com/pgsty/silo/pull/257), [pgsty/silo#264](https://github.com/pgsty/silo/pull/264), [pgsty/silo#266](https://github.com/pgsty/silo/pull/266), [pgsty/silo#269](https://github.com/pgsty/silo/pull/269), [pgsty/silo#273](https://github.com/pgsty/silo/pull/273), [pgsty/silo#274](https://github.com/pgsty/silo/pull/274), [pgsty/silo#275](https://github.com/pgsty/silo/pull/275), [pgsty/silo#279](https://github.com/pgsty/silo/pull/279), [pgsty/silo#282](https://github.com/pgsty/silo/pull/282), [pgsty/silo#286](https://github.com/pgsty/silo/pull/286), [pgsty/silo#292](https://github.com/pgsty/silo/pull/292)
+
+Open PRs: [pgsty/silo#294](https://github.com/pgsty/silo/pull/294)
+
+PRs closed without merging: [pgsty/silo#245](https://github.com/pgsty/silo/pull/245), [pgsty/silo#248](https://github.com/pgsty/silo/pull/248), [pgsty/silo#262](https://github.com/pgsty/silo/pull/262), [pgsty/silo#290](https://github.com/pgsty/silo/pull/290)
+
+Closed issues: [pgsty/silo#252](https://github.com/pgsty/silo/issues/252), [pgsty/silo#254](https://github.com/pgsty/silo/issues/254), [pgsty/silo#256](https://github.com/pgsty/silo/issues/256), [pgsty/silo#261](https://github.com/pgsty/silo/issues/261), [pgsty/silo#263](https://github.com/pgsty/silo/issues/263), [pgsty/silo#265](https://github.com/pgsty/silo/issues/265), [pgsty/silo#268](https://github.com/pgsty/silo/issues/268), [pgsty/silo#270](https://github.com/pgsty/silo/issues/270), [pgsty/silo#271](https://github.com/pgsty/silo/issues/271), [pgsty/silo#272](https://github.com/pgsty/silo/issues/272), [pgsty/silo#278](https://github.com/pgsty/silo/issues/278), [pgsty/silo#281](https://github.com/pgsty/silo/issues/281), [pgsty/silo#285](https://github.com/pgsty/silo/issues/285), [pgsty/silo#289](https://github.com/pgsty/silo/issues/289), [pgsty/silo#291](https://github.com/pgsty/silo/issues/291)
+
+Open issues: [pgsty/silo#293](https://github.com/pgsty/silo/issues/293)
+
+Merged PRs: [pgsty/silo-pkg#11](https://github.com/pgsty/silo-pkg/pull/11)
+
+The migration repair from [#248](https://github.com/pgsty/silo/pull/248) was incorporated in [60c7179dd](https://github.com/pgsty/silo/commit/60c7179ddbfcbd41a1fe67707230f5b360a43020), retaining the original authorship and DCO. The mixed-EC listing proposal in [#262](https://github.com/pgsty/silo/pull/262) was superseded by [#267](https://github.com/pgsty/silo/pull/267). The author closed [#290](https://github.com/pgsty/silo/pull/290) after verifying the native-restore rework covered the reported defects.
+
+
+
## Keeping this record current
The reviewed [website contributor data](https://github.com/pgsty/silo.pgsty.com/blob/main/data/home/contributors.yaml) is shared by this record, the component records, README avatar walls, and both website languages. After auditing all issue / PR pages and reviewing adoption evidence, update that data and run `python3 bin/contributors.py` and `python3 bin/contributor_avatars.py` in the site checkout. Validate the generated records with `python3 bin/contributors.py --check`.
diff --git a/README.md b/README.md
index 7fe08fd62..902b156ce 100644
--- a/README.md
+++ b/README.md
@@ -32,29 +32,26 @@
> [!IMPORTANT]
> **PGSTY Silo** (hereinafter “Silo”) is an independent, community-maintained fork of the open-source MinIO server, published by [Pigsty](https://pigsty.io) from [`pgsty/silo`](https://github.com/pgsty/silo). It is not affiliated with, endorsed by, or sponsored by MinIO, Inc. “MinIO” is used only to identify the upstream project and compatibility lineage.
-> [!NOTE]
-> Renamed from `pgsty/minio` to `pgsty/silo`, default branch `master` → `main`, on 2026-08-06. Artifacts under the original MinIO identity stay published on the archived [`minio`](https://github.com/pgsty/silo/tree/minio) branch and in releases up to [`RELEASE.2026-08-04T00-00-00Z`](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-08-04T00-00-00Z).
-
-## SILO 20261026000000
-
-[SILO 20261026000000](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-10-26T00-00-00Z) is available as platform archives, Linux packages, and standard or distroless Docker images for amd64 and arm64. The release tag is `RELEASE.2026-10-26T00-00-00Z`; the package version is `20261026000000.0.0`, built from source `c3ad836aed0d`.
-
-This release fixes LDAP long-DN login, IAM policy refresh, multi-pool deletion safety, tiered-object expiry, multipart replication checksums, and remote rollback-option propagation. It embeds Console v2.5.1 (`fff1618d9abb`) and uses silo-pkg v3.15.2, Go 1.27.3, and upstream minio-go `v7.4.2-0.20261025165926-320af050c445`. Use mcli 20261026 for administration; the container images bundle it as `mcli`.
-
-The Server IAM cache repair enables Console's **Reset to default** action. Existing storage timeouts and cancellation behavior remain: a timeout does not prove that a disk operation stopped or a write did not commit. Read the [coordinated release notes](https://silo.pgsty.com/blog/release/silo-20261026/) and [remaining storage limits](CHANGELOG.md#release2026-10-26t00-00-00z) before upgrading. See [CONTRIBUTORS.md](CONTRIBUTORS.md) for the people behind the code, reports, and documentation.
-
## Overview
PGSTY SILO keeps one maintained release line of the open-source MinIO server alive after upstream ended community distribution: builds, packages, multi-arch images, security fixes, and the full web console. Pigsty runs it in production as its PostgreSQL backup repository.
It follows one rule — **the product and its delivery surfaces are renamed; the protocol and your data are not.** Everything else lives on [silo.pgsty.com](https://silo.pgsty.com/).
-**Related:** [`pgsty/mc`](https://github.com/pgsty/mc) client (shipped as `mcli`) · [`pgsty/silo-console`](https://github.com/pgsty/silo-console) · [`pgsty/silo-pkg`](https://github.com/pgsty/silo-pkg) · [`pgsty/pigsty`](https://github.com/pgsty/pigsty)
+**Related:** [`pgsty/mc`](https://github.com/pgsty/mc) · [`pgsty/silo-console`](https://github.com/pgsty/silo-console) · [`pgsty/silo-pkg`](https://github.com/pgsty/silo-pkg) · [`pgsty/kes`](https://github.com/pgsty/kes) · [`pgsty/pigsty`](https://github.com/pgsty/pigsty)
+#### SILO 20261109
+
+> [!WARNING]
+> [SILO 20261109](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-11-09T00-00-00Z) fixes bugs and security vulnerabilities. We strongly recommend scheduling an upgrade to reduce security risks.
+
+> [!NOTE]
+> On 2026-08-06, `pgsty/minio` became `pgsty/silo`, and the default branch changed from `master` to `main`. The last MinIO-branded release is [`20260804`](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-08-04T00-00-00Z) on the [`minio`](https://github.com/pgsty/silo/tree/minio) branch.
+
## Quick Start
```bash
@@ -62,7 +59,7 @@ docker run -d --name silo -p 9000:9000 -p 9001:9001 \
-e MINIO_ROOT_USER=minioadmin \
-e MINIO_ROOT_PASSWORD=change-me-long-password \
-v "$PWD/data:/data" \
- docker.io/pgsty/silo:RELEASE.2026-10-26T00-00-00Z server /data --console-address ":9001"
+ docker.io/pgsty/silo:RELEASE.2026-11-09T00-00-00Z server /data --console-address ":9001"
```
diff --git a/README_ZH.md b/README_ZH.md
index bb886a66a..aa3227566 100644
--- a/README_ZH.md
+++ b/README_ZH.md
@@ -32,29 +32,26 @@
> [!IMPORTANT]
> **PGSTY Silo**(以下简称 Silo)是由 [Pigsty](https://pigsty.cc) 独立维护、从 [`pgsty/silo`](https://github.com/pgsty/silo) 发布的开源 MinIO 社区分支。本项目与 MinIO, Inc. 不存在隶属、背书或赞助关系;文中使用 “MinIO” 仅用于说明上游项目及兼容谱系。
-> [!NOTE]
-> 2026-08-06,本仓库由 `pgsty/minio` 更名为 `pgsty/silo`,默认分支由 `master` 更名为 `main`。以原 MinIO 形态维持的归档构件仍位于归档的 [`minio`](https://github.com/pgsty/silo/tree/minio) 分支,以及截止 [`RELEASE.2026-08-04T00-00-00Z`](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-08-04T00-00-00Z) 的历次发布中。
-
-## SILO 20261026000000
-
-[SILO 20261026000000](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-10-26T00-00-00Z) 已正式发布,提供各平台归档包、Linux 软件包,以及 amd64/arm64 标准版和 distroless Docker 镜像。版本标签为 `RELEASE.2026-10-26T00-00-00Z`,包版本为 `20261026000000.0.0`,构建源码为 `c3ad836aed0d`。
-
-本版修复 LDAP 长 DN 登录、IAM 策略刷新、多池删除安全、分层对象过期、分片复制校验和及远端回滚参数透传。内置 Console v2.5.1(`fff1618d9abb`),使用 silo-pkg v3.15.2、Go 1.27.3 与上游 minio-go `v7.4.2-0.20261025165926-320af050c445`。配套管理客户端为 mcli 20261026,容器镜像内置该版本的 `mcli`。
-
-Server IAM 缓存修复使 Console **Reset to default(恢复默认)** 操作即时生效。存储超时与取消行为保持既有语义:超时不代表底层磁盘操作已停止,也不代表写入未提交。升级前请阅读[联合发布说明](https://silo.pgsty.com/zh/blog/release/silo-20261026/)与[仍存的存储限制](CHANGELOG.md#release2026-10-26t00-00-00z)。代码、问题报告和文档贡献者见 [CONTRIBUTORS.md](CONTRIBUTORS.md)。
-
## 概述
上游停止社区发行后,Silo 为开源 MinIO 服务端维护一条持续可用的版本线:构建、软件包、多架构镜像、安全修复与完整 Web 控制台。Pigsty 在生产环境中用它承载 PostgreSQL 备份存储。
它只遵循一条原则:**改名的是产品与交付物,不是协议与你的数据。** 其余内容都在 [silo.pgsty.com](https://silo.pgsty.com/zh/)。
-**相关项目:**[`pgsty/mc`](https://github.com/pgsty/mc) 客户端(以 `mcli` 发行) · [`pgsty/silo-console`](https://github.com/pgsty/silo-console) · [`pgsty/silo-pkg`](https://github.com/pgsty/silo-pkg) · [`pgsty/pigsty`](https://github.com/pgsty/pigsty)
+**相关项目:**[`pgsty/mc`](https://github.com/pgsty/mc) · [`pgsty/silo-console`](https://github.com/pgsty/silo-console) · [`pgsty/silo-pkg`](https://github.com/pgsty/silo-pkg) · [`pgsty/kes`](https://github.com/pgsty/kes) · [`pgsty/pigsty`](https://github.com/pgsty/pigsty)
+#### SILO 20261109
+
+> [!WARNING]
+> [SILO 20261109](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-11-09T00-00-00Z) 修复了缺陷与安全漏洞,强烈建议尽快安排升级,以降低安全风险。
+
+> [!NOTE]
+> 2026-08-06,`pgsty/minio` 更名为 `pgsty/silo`,默认分支由 `master` 改为 `main`。最后一个 MinIO 品牌发布是 [`minio`](https://github.com/pgsty/silo/tree/minio) 分支上的 [`20260804`](https://github.com/pgsty/silo/releases/tag/RELEASE.2026-08-04T00-00-00Z)。
+
## 快速上手
```bash
@@ -62,7 +59,7 @@ docker run -d --name silo -p 9000:9000 -p 9001:9001 \
-e MINIO_ROOT_USER=minioadmin \
-e MINIO_ROOT_PASSWORD=change-me-long-password \
-v "$PWD/data:/data" \
- docker.io/pgsty/silo:RELEASE.2026-10-26T00-00-00Z server /data --console-address ":9001"
+ docker.io/pgsty/silo:RELEASE.2026-11-09T00-00-00Z server /data --console-address ":9001"
```
diff --git a/SECURITY.md b/SECURITY.md
index e3cf65127..ba658a04c 100644
--- a/SECURITY.md
+++ b/SECURITY.md
@@ -38,7 +38,7 @@ For vulnerabilities in this fork:
1. Follow the fork-specific expectations in [VULNERABILITY_REPORT.md](VULNERABILITY_REPORT.md).
2. Prefer this repository's [private GitHub security advisory](https://github.com/pgsty/silo/security/advisories/new) workflow.
-3. If you cannot use GitHub private reporting, email [ron@pgsty.com](mailto:ron@pgsty.com)
+3. If you cannot use GitHub private reporting, email [ron@pgsty.com](mailto:ron@pgsty.com) or rh@vonng.com
directly. Do not publish vulnerability details or exploit code in public
issues or pull requests.
4. If you confirm the issue also affects upstream `minio/minio`, report it upstream separately.