feat(governance): unify durable event retention

This commit is contained in:
jxxghp
2026-08-26 12:45:44 +08:00
parent f5dacf79c3
commit 362f606751
29 changed files with 948 additions and 121 deletions
+5
View File
@@ -120,6 +120,11 @@ def build_chain_runtime_config(settings: Settings) -> ChainRuntimeConfig:
data_cleanup_site_userdata_days=settings.DATA_CLEANUP_SITE_USERDATA_DAYS,
data_cleanup_transfer_history_days=settings.DATA_CLEANUP_TRANSFER_HISTORY_DAYS,
data_cleanup_download_failure_days=settings.DATA_CLEANUP_DOWNLOAD_FAILURE_DAYS,
data_cleanup_subscribe_history_days=settings.DATA_CLEANUP_SUBSCRIBE_HISTORY_DAYS,
data_cleanup_agent_chat_days=settings.DATA_CLEANUP_AGENT_CHAT_DAYS,
data_cleanup_agent_task_run_days=settings.DATA_CLEANUP_AGENT_TASK_RUN_DAYS,
data_cleanup_outbox_completed_days=settings.DATA_CLEANUP_OUTBOX_COMPLETED_DAYS,
data_cleanup_outbox_dead_days=settings.DATA_CLEANUP_OUTBOX_DEAD_DAYS,
download_subtitle=settings.DOWNLOAD_SUBTITLE,
music_metadata_to_simplified=settings.MUSIC_METADATA_TO_SIMPLIFIED,
recognize_plugin_first=settings.RECOGNIZE_PLUGIN_FIRST,
+27 -1
View File
@@ -374,7 +374,9 @@ def _build_outbox_dispatcher() -> OutboxDispatcher:
message.payload,
),
"subscribe.deleted.report": dispatch_subscribe_deleted_report,
"subscribe.complete": lambda message: EventManager().send_event(
durable_event_topic(
EventType.SubscribeComplete
): lambda message: EventManager().send_event(
EventType.SubscribeComplete,
message.payload,
),
@@ -398,6 +400,30 @@ def _build_outbox_dispatcher() -> OutboxDispatcher:
EventType.TransferFailed,
restore_transfer_result(message.payload),
),
durable_event_topic(
EventType.SubtitleTransferComplete
): lambda message: EventManager().send_event(
EventType.SubtitleTransferComplete,
restore_transfer_result(message.payload),
),
durable_event_topic(
EventType.SubtitleTransferFailed
): lambda message: EventManager().send_event(
EventType.SubtitleTransferFailed,
restore_transfer_result(message.payload),
),
durable_event_topic(
EventType.AudioTransferComplete
): lambda message: EventManager().send_event(
EventType.AudioTransferComplete,
restore_transfer_result(message.payload),
),
durable_event_topic(
EventType.AudioTransferFailed
): lambda message: EventManager().send_event(
EventType.AudioTransferFailed,
restore_transfer_result(message.payload),
),
}
validate_durable_event_handlers(handlers)
session = SessionFactory()