From 39e8b6847235dc8eaeaa63def026dd18682410a4 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 14 May 2026 19:29:42 +0000 Subject: [PATCH 1/3] Initial plan From 7fd52dbda7c42115458ff2d9f5f74a13228c2be0 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 14 May 2026 19:32:28 +0000 Subject: [PATCH 2/3] docs: clarify when __NEOFS__EXPIRATION_EPOCH takes effect Agent-Logs-Url: https://github.com/nspcc-dev/neofs-spec/sessions/b9a5849a-2ae3-4f83-baf9-ab28b4156dd9 Co-authored-by: roman-khimov <22092804+roman-khimov@users.noreply.github.com> --- 03-storage/10-expiration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/03-storage/10-expiration.md b/03-storage/10-expiration.md index f103d3d..5481087 100644 --- a/03-storage/10-expiration.md +++ b/03-storage/10-expiration.md @@ -1,6 +1,6 @@ ### Object Expiration -In NeoFS, Objects may have an "expiration date". When an Object expires, it is marked for deletion and isn't available anymore. There is a well-known `__NEOFS__EXPIRATION_EPOCH` attribute which specifies the expiration date. Only a Regular Object may expire. +In NeoFS, Objects may have an "expiration date". When an Object expires, it is marked for deletion and isn't available anymore. There is a well-known `__NEOFS__EXPIRATION_EPOCH` attribute which specifies the expiration date: the Object remains available throughout that epoch and expires after it occurs. Only a Regular Object may expire. A Tombstone object is created upon Regular Object or Storage Group deletion. Every Tombstone object has the `__NEOFS__EXPIRATION_EPOCH` attribute as well. Thereby Storage Engine is able to filter Tombstones and select ones for total cleanup. From 6cf92e4c6a05e2ce81b9162bdac7a1a88d332159 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 14 May 2026 20:13:29 +0000 Subject: [PATCH 3/3] docs: use clearer epoch end wording in expiration section Agent-Logs-Url: https://github.com/nspcc-dev/neofs-spec/sessions/00220ab1-8022-4c16-ab08-3b9c0644c9d7 Co-authored-by: roman-khimov <22092804+roman-khimov@users.noreply.github.com> --- 03-storage/10-expiration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/03-storage/10-expiration.md b/03-storage/10-expiration.md index 5481087..bcd3537 100644 --- a/03-storage/10-expiration.md +++ b/03-storage/10-expiration.md @@ -1,6 +1,6 @@ ### Object Expiration -In NeoFS, Objects may have an "expiration date". When an Object expires, it is marked for deletion and isn't available anymore. There is a well-known `__NEOFS__EXPIRATION_EPOCH` attribute which specifies the expiration date: the Object remains available throughout that epoch and expires after it occurs. Only a Regular Object may expire. +In NeoFS, Objects may have an "expiration date". When an Object expires, it is marked for deletion and isn't available anymore. There is a well-known `__NEOFS__EXPIRATION_EPOCH` attribute which specifies the expiration date: the Object remains available throughout that epoch and expires after it ends. Only a Regular Object may expire. A Tombstone object is created upon Regular Object or Storage Group deletion. Every Tombstone object has the `__NEOFS__EXPIRATION_EPOCH` attribute as well. Thereby Storage Engine is able to filter Tombstones and select ones for total cleanup.