alist/internal/bootstrap
okatu-loli f1e43cf7d2 feat(s3): Add S3 object archive and thaw task management
This commit introduces comprehensive support for S3 object archive and thaw operations, managed asynchronously through a new task system.

- **S3 Transition Task System**:
  - Adds a new `S3Transition` task configuration, including workers, max retries, and persistence options.
  - Initializes `S3TransitionTaskManager` to handle asynchronous S3 archive/thaw requests.
  - Registers dedicated API routes for monitoring S3 transition tasks.

- **Integrate S3 Archive/Thaw with Other API**:
  - Modifies the `Other` API handler to intercept `archive` and `thaw` methods for S3 storage drivers.
  - Dispatches these operations as `S3TransitionTask` instances to the task manager for background processing.
  - Returns a task ID to the client for tracking the status of the dispatched operation.

- **Refactor `other` package for improved API consistency**:
  - Exports previously internal structs such as `archiveRequest`, `thawRequest`, `objectDescriptor`, `archiveResponse`, `thawResponse`, and `restoreStatus` by making their names public.
  - Makes helper functions like `decodeOtherArgs`, `normalizeStorageClass`, and `normalizeRestoreTier` public.
  - Introduces new constants for various S3 `Other` API methods.
2025-10-15 17:56:04 +08:00
..
data feat: implement session management (#9286) 2025-08-25 19:46:38 +08:00
patch refactor(convert_role): Improve role conversion logic for legacy formats (#9219) 2025-07-26 15:20:08 +08:00
config.go feat(alias): add DownloadConcurrency and DownloadPartSize option (#7829) 2025-01-27 20:08:39 +08:00
db.go fix(db): support postgres trust/peer mode (#8198 close #8066) 2025-03-27 23:15:04 +08:00
index.go feat: Search enhancement (#2562) 2022-12-05 13:28:39 +08:00
log.go feat(log): enhance log formatter to respect NO_COLOR env variable (#9239) 2025-08-03 09:26:23 +08:00
offline_download.go feat: refactor offline download (#5408 close #4108) 2023-11-06 16:56:55 +08:00
patch.go refactor(patch): execute all patches in dev version (#7807) 2025-01-27 20:49:24 +08:00
storage.go fix: init storages in order (#6346) 2024-04-19 17:22:16 +08:00
stream_limit.go feat(traffic): support limit task worker count & file stream rate (#7948) 2025-02-16 12:22:11 +08:00
task.go feat(s3): Add S3 object archive and thaw task management 2025-10-15 17:56:04 +08:00