Bucket Settings
Each bucket in Sairo has a settings panel with eight tabs. Open it by clicking the gear icon next to any bucket name in the sidebar.
1. Overview
Section titled “1. Overview”The Overview tab shows the bucket’s current state at a glance:
- Versioning — Toggle versioning between Enabled and Suspended. See Version Management for details.
- Object Lock — Displays whether Object Lock is enabled on the bucket. Object Lock is configured at bucket creation time on the S3 backend and cannot be changed through Sairo.
2. Lifecycle
Section titled “2. Lifecycle”The Lifecycle tab provides a rule builder for managing automatic object expiration and cleanup. You can create rules for:
- Current version expiration — Delete objects after a specified number of days.
- Noncurrent version cleanup — Remove old versions after a retention period, useful for controlling storage costs on versioned buckets.
- Incomplete multipart upload cleanup — Abort multipart uploads that have been in progress for longer than a specified duration.
Each rule can be scoped to a prefix filter and has an enable/disable toggle so you can pause rules without deleting them.
3. Policy
Section titled “3. Policy”The Policy tab provides a JSON editor for the bucket’s access policy. Paste or edit the policy document directly, and Sairo validates the JSON structure before saving. Syntax errors are highlighted inline.
This is the standard S3 bucket policy format. Refer to your storage provider’s documentation for supported policy actions and conditions.
4. ACL
Section titled “4. ACL”The ACL tab manages the bucket’s Access Control List:
- Canned ACL selector — Choose from standard canned ACLs (private, public-read, public-read-write, authenticated-read).
- Owner info — Displays the bucket owner’s canonical user ID and display name.
- Grants table — Lists all current grants with grantee, permission type, and source.
5. Tags
Section titled “5. Tags”The Tags tab provides a key-value editor for bucket tags. Add, edit, or remove tags as needed. Tags are commonly used for cost allocation, organization, and automation triggers.
6. CORS
Section titled “6. CORS”The CORS tab includes a JSON editor for the bucket’s Cross-Origin Resource Sharing rules. Each rule specifies allowed origins, methods, headers, and max age. Sairo validates the JSON structure before applying changes.
7. Multipart
Section titled “7. Multipart”The Multipart tab shows all incomplete multipart uploads in the bucket with intelligent stale/active classification.
Data is loaded lazily — only when you click the Multipart tab, not when the settings page opens. This keeps the settings page fast even for buckets with many incomplete uploads.
Each upload is shown as a card with:
| Field | Description |
|---|---|
| Filename | The object key, with folder path shown below |
| Size | Total size of uploaded parts |
| Parts | Number of parts uploaded so far |
| Age | How long ago the upload started |
| Status | Stale (older than 24h, red) or Active (green) |
Stale vs. active
Section titled “Stale vs. active”Uploads older than 24 hours are classified as stale — these are likely failed or abandoned uploads wasting storage. Recent uploads (under 24 hours) are classified as active and may be in-progress pipeline writes.
- Abort buttons only appear on stale uploads — you cannot accidentally abort an active upload from the UI
- Single abort safety — the backend rejects aborting uploads less than 1 hour old unless explicitly forced
- “Abort All Stale” button — bulk-aborts all stale uploads in one click, with a confirmation dialog showing the count and size. Active uploads are never touched.
Pagination
Section titled “Pagination”The listing handles buckets with 1,000+ incomplete uploads by paginating through the S3 ListMultipartUploads API automatically.
8. Index
Section titled “8. Index”The Index tab shows the state of Sairo’s local index for this bucket:
| Field | Description |
|---|---|
| Crawl status | Whether a crawl is currently running or idle |
| Last indexed | Timestamp of the most recent completed crawl |
| Object count | Number of objects in the local index |
| Total size | Aggregate size of all indexed objects |
Click Re-index Bucket to trigger an immediate crawl, which is useful after bulk uploads or deletes when you do not want to wait for the next automatic recrawl cycle.