Skip to content

Harden certificate status, paging, and retry contracts#304

Merged
PrzemyslawKlys merged 3 commits into
mainfrom
codex/sectigo-reliability
Jul 11, 2026
Merged

Harden certificate status, paging, and retry contracts#304
PrzemyslawKlys merged 3 commits into
mainfrom
codex/sectigo-reliability

Conversation

@PrzemyslawKlys

@PrzemyslawKlys PrzemyslawKlys commented Jul 10, 2026

Copy link
Copy Markdown
Member

Summary

  • expose unique CertificateStatus values while preserving the documented SCM 25.5 numeric wire table, including numeric strings
  • represent enrolled-pending-download, not-enrolled, awaiting-approval, downloaded, and external legacy states without aliasing unrelated enum values
  • preserve legacy paging and organization/requester filters
  • retry only replay-safe, idempotent Admin and legacy requests
  • send mutation POSTs and streaming/multipart uploads once without pre-buffering
  • preserve caller ownership of low-level HttpContent and upload streams across net472 and current .NET
  • honor Retry-After for API and token throttling
  • clear stale authorization when username/password authentication is selected
  • make token-cache updates atomic and persist refreshes through explicit, environment, or default cache paths
  • bound expiring-certificate detail concurrency and split the certificate facade by responsibility
  • update the package to 0.3.0

Compatibility

CertificateStatus has unique underlying values, while JSON names, documented legacy numeric tokens, and numeric strings remain compatible. Unknown numeric codes are rejected rather than cast to an unrelated status.

Non-idempotent operations are not replayed after ambiguous transport failures. Content created by higher-level clients is disposed, while caller-provided low-level content and streams remain caller-owned.

Validation

The complete suite passes on .NET 8 and .NET Framework 4.7.2. The package targets net472, netstandard2.0, and .NET 8, 9, and 10.

Comment thread SectigoCertificateManager.Tests/AdminSslClientTests.cs Fixed
Comment thread SectigoCertificateManager.Tests/AdminSslClientTests.cs Fixed
Comment thread SectigoCertificateManager.Tests/AdminSslClientTests.cs Fixed
Comment thread SectigoCertificateManager/AdminApi/AdminApiClientBase.cs Fixed
Comment thread SectigoCertificateManager/AdminApi/AdminApiClientBase.cs Fixed
Comment thread SectigoCertificateManager.Tests/TestEnvironment.cs Fixed
@PrzemyslawKlys
PrzemyslawKlys force-pushed the codex/sectigo-reliability branch from 9943345 to 32ac1be Compare July 10, 2026 14:57

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 99433454f1

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread SectigoCertificateManager/AdminApi/AdminApiClientBase.cs
Comment thread SectigoCertificateManager/SectigoClient.cs
Comment thread SectigoCertificateManager/CertificateStatus.cs
Comment thread SectigoCertificateManager/AdminApi/AdminApiClientBase.cs
Comment thread SectigoCertificateManager/AdminApi/AdminApiClientBase.cs Outdated
Comment thread SectigoCertificateManager/SectigoClient.cs Outdated
Comment thread SectigoCertificateManager.Tests/AdminSslClientTests.cs Fixed
Comment thread SectigoCertificateManager.Tests/AdminSslClientTests.cs Fixed
Comment thread SectigoCertificateManager.Tests/AdminSslClientTests.cs Fixed
Comment thread SectigoCertificateManager.Tests/TestEnvironment.cs Fixed
Comment thread SectigoCertificateManager.Tests/TestEnvironment.cs Fixed
Comment thread SectigoCertificateManager.Tests/TestEnvironment.cs Fixed
@PrzemyslawKlys
PrzemyslawKlys force-pushed the codex/sectigo-reliability branch from 32ac1be to d20001e Compare July 10, 2026 15:33
@PrzemyslawKlys

Copy link
Copy Markdown
Member Author

@codex please review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d20001e8eb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread SectigoCertificateManager/CertificateStatusJsonConverter.cs
Comment thread SectigoCertificateManager/SectigoClient.cs
Comment thread SectigoCertificateManager/SectigoClient.cs Outdated
@PrzemyslawKlys
PrzemyslawKlys force-pushed the codex/sectigo-reliability branch from d20001e to aabd348 Compare July 10, 2026 17:55
Comment thread SectigoCertificateManager.Tests/SectigoClientTests.cs Fixed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: aabd34852e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread SectigoCertificateManager/CertificateStatusJsonConverter.cs Outdated
Comment thread SectigoCertificateManager/SectigoClient.cs Outdated
@PrzemyslawKlys
PrzemyslawKlys force-pushed the codex/sectigo-reliability branch from aabd348 to cc001ae Compare July 10, 2026 19:21
Comment thread SectigoCertificateManager.Tests/SectigoClientTests.cs Fixed

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: cc001aec48

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread SectigoCertificateManager/Clients/CertificatesClient.Import.cs
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

Comment thread SectigoCertificateManager.Tests/SectigoClientTests.cs Fixed
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@PrzemyslawKlys
PrzemyslawKlys merged commit 2085a33 into main Jul 11, 2026
9 checks passed
@PrzemyslawKlys
PrzemyslawKlys deleted the codex/sectigo-reliability branch July 11, 2026 10:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant