From 6bd27d71a2e1bce07f4a06b0aeb4a9f030ea8630 Mon Sep 17 00:00:00 2001 From: pavelvais Date: Thu, 13 Aug 2026 12:53:18 +0200 Subject: [PATCH 1/5] [DGS-4423] Add per-document timestamp settings - Add `EnvelopeDocument.timestampEnabled` and `EnvelopeDocument.timestampsRenewalPeriod` - Add `EnvelopeTemplateDocument.timestampEnabled` and `EnvelopeTemplateDocument.timestampsRenewalPeriod` - Add `EnvelopeProperties.defaultTimestampDocuments` and `EnvelopeProperties.timestampAuditLogRenewalPeriod` - Rename `EnvelopeProperties.timestampsRenewalPeriod` to `defaultTimestampsRenewalPeriod` - Deprecate `timestampDocuments` on `EnvelopeProperties` and `EnvelopeTemplate` in favor of `defaultTimestampDocuments` Co-Authored-By: Claude Fable 5 --- src/Resource/EnvelopeDocument.php | 5 +++++ src/Resource/EnvelopeProperties.php | 7 ++++++- src/Resource/EnvelopeTemplate.php | 3 +++ src/Resource/EnvelopeTemplateDocument.php | 4 ++++ 4 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/Resource/EnvelopeDocument.php b/src/Resource/EnvelopeDocument.php index f19460f..e369028 100644 --- a/src/Resource/EnvelopeDocument.php +++ b/src/Resource/EnvelopeDocument.php @@ -42,4 +42,9 @@ class EnvelopeDocument extends BaseResource public ?DateTime $invalidatedAt = null; public bool $hasSignatures; + + public bool $timestampEnabled; + + /** Timestamps renewal period in years (-1 = unlimited), null = disabled. */ + public ?int $timestampsRenewalPeriod = null; } diff --git a/src/Resource/EnvelopeProperties.php b/src/Resource/EnvelopeProperties.php index 4833fa6..98ac3d5 100644 --- a/src/Resource/EnvelopeProperties.php +++ b/src/Resource/EnvelopeProperties.php @@ -27,6 +27,9 @@ class EnvelopeProperties extends BaseResource public bool $auditLogAvailableToAccountUsers; + public bool $defaultTimestampDocuments; + + /** @deprecated Use $defaultTimestampDocuments instead */ public bool $timestampDocuments; public bool $timestampAuditLog; @@ -51,5 +54,7 @@ class EnvelopeProperties extends BaseResource public bool $timestampsEnabled; - public ?int $timestampsRenewalPeriod; + public ?int $defaultTimestampsRenewalPeriod = null; + + public ?int $timestampAuditLogRenewalPeriod = null; } diff --git a/src/Resource/EnvelopeTemplate.php b/src/Resource/EnvelopeTemplate.php index e481448..df394e6 100644 --- a/src/Resource/EnvelopeTemplate.php +++ b/src/Resource/EnvelopeTemplate.php @@ -47,6 +47,9 @@ class EnvelopeTemplate extends BaseResource public string $channelForDownload; + public bool $defaultTimestampDocuments; + + /** @deprecated Use $defaultTimestampDocuments instead */ public bool $timestampDocuments; public bool $sendCompleted; diff --git a/src/Resource/EnvelopeTemplateDocument.php b/src/Resource/EnvelopeTemplateDocument.php index 30f11cf..a5c02b4 100644 --- a/src/Resource/EnvelopeTemplateDocument.php +++ b/src/Resource/EnvelopeTemplateDocument.php @@ -24,4 +24,8 @@ class EnvelopeTemplateDocument extends BaseResource /** @var array */ public array $assignments; + + public bool $timestampEnabled; + + public ?int $timestampsRenewalPeriod = null; } From 7e1a2c3cd6d27f32bcf023b53a1c471454f6463b Mon Sep 17 00:00:00 2001 From: pavelvais Date: Tue, 11 Aug 2026 11:03:40 +0200 Subject: [PATCH 2/5] Bump digitalcz/coding-standard to ^0.3.0 Composer 2.9 blocks installation of squizlabs/php_codesniffer 3.8/3.9 due to security advisory PKSA-rdkp-vv9z-mjkg; coding-standard ^0.3.0 allows php_codesniffer 3.13.* where the advisory is fixed. Co-Authored-By: Claude Fable 5 --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 1ca30b1..23226ad 100644 --- a/composer.json +++ b/composer.json @@ -45,7 +45,7 @@ "symfony/http-client": "*" }, "require-dev": { - "digitalcz/coding-standard": "^0.2.0", + "digitalcz/coding-standard": "^0.3.0", "nyholm/nsa": "^1.2.1", "nyholm/psr7": "^1.3", "php-http/httplug": "^2.1", From 43e4779777262352b3a71507caa97858dfb189a5 Mon Sep 17 00:00:00 2001 From: pavelvais Date: Tue, 11 Aug 2026 13:36:51 +0200 Subject: [PATCH 3/5] Require slevomat/coding-standard ^8.19.1 to fix prefer-lowest CI slevomat/coding-standard 8.19.0 combined with php_codesniffer 3.13 reports a false positive (MultipleSpacesBetweenTypeHintAndProperty) on the untyped FileStream::$handle property; 8.19.1 fixes property detection. digitalcz/coding-standard only constrains it to 8.19.*, so prefer-lowest picked the broken 8.19.0. Co-Authored-By: Claude Fable 5 --- composer.json | 1 + 1 file changed, 1 insertion(+) diff --git a/composer.json b/composer.json index 23226ad..ebb1dbf 100644 --- a/composer.json +++ b/composer.json @@ -55,6 +55,7 @@ "phpstan/phpstan-phpunit": "^1.3.2", "phpstan/phpstan-strict-rules": "^1.4.4", "phpunit/phpunit": "^9.5", + "slevomat/coding-standard": "^8.19.1", "symfony/cache": "^6.0", "symfony/http-client": "^6.0", "symfony/var-dumper": "^6.0" From 97c9758cd246474b090b5b71614d7ff981979e74 Mon Sep 17 00:00:00 2001 From: pavelvais Date: Thu, 13 Aug 2026 14:23:55 +0200 Subject: [PATCH 4/5] Update CHANGELOG for per-document timestamp settings Co-Authored-By: Claude Fable 5 --- CHANGELOG.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b42ce2a..9f52ed6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -42,9 +42,15 @@ Updates should follow the [Keep a CHANGELOG](http://keepachangelog.com/) princip - Add `AccountBilling.timestampsAtsa` and `AccountBilling.timestampsPostSignum` property - Add `Features.timestampsAtsa` and `Features.timestampsPostSignum` property - Add `EnvelopeProperties.timestampsEnabled` property -- Add `EnvelopeProperties.timestampsRenewalPeriod` property +- Add `EnvelopeProperties.defaultTimestampsRenewalPeriod` property - Add `Features.timestampsRenewal` property - Add `AccountBilling.timestampsRenewal` property +- Add `EnvelopeDocument.timestampEnabled` and `EnvelopeDocument.timestampsRenewalPeriod` properties +- Add `EnvelopeTemplateDocument.timestampEnabled` and `EnvelopeTemplateDocument.timestampsRenewalPeriod` properties +- Add `EnvelopeProperties.defaultTimestampDocuments` and `EnvelopeProperties.timestampAuditLogRenewalPeriod` properties +- Add `EnvelopeTemplate.defaultTimestampDocuments` property +- Deprecate `EnvelopeProperties.timestampDocuments` in favor of `EnvelopeProperties.defaultTimestampDocuments` +- Deprecate `EnvelopeTemplate.timestampDocuments` in favor of `EnvelopeTemplate.defaultTimestampDocuments` ## [2.11.0] - 2025-11-12 ### Deprecated From 514721239bbb38966d2a1bb984032872a45d0bfd Mon Sep 17 00:00:00 2001 From: pavelvais Date: Thu, 13 Aug 2026 14:25:14 +0200 Subject: [PATCH 5/5] Remove docblock from `EnvelopeDocument.timestampsRenewalPeriod` Co-Authored-By: Claude Fable 5 --- src/Resource/EnvelopeDocument.php | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Resource/EnvelopeDocument.php b/src/Resource/EnvelopeDocument.php index e369028..5d21111 100644 --- a/src/Resource/EnvelopeDocument.php +++ b/src/Resource/EnvelopeDocument.php @@ -45,6 +45,5 @@ class EnvelopeDocument extends BaseResource public bool $timestampEnabled; - /** Timestamps renewal period in years (-1 = unlimited), null = disabled. */ public ?int $timestampsRenewalPeriod = null; }