Skip to content

Fix Assembly polling after status rate limits - #84

Open
tim-kos wants to merge 2 commits into
mainfrom
fix/polling-status-rate-limit
Open

tim-kos wants to merge 2 commits into
mainfrom
fix/polling-status-rate-limit

Conversation

@tim-kos

@tim-kos tim-kos commented Oct 13, 2026 •

Copy link
Copy Markdown
Member

Assembly status polling currently treats ASSEMBLY_STATUS_FETCHING_RATE_LIMIT_REACHED as a terminal failure and loses the status URL when that response replaces the previous body. Subsequent reloads can then request the API root.

Retain the status URL across response replacement, keep status rate limits out of finished?, and wait at least the server’s info.retryIn before retrying. Preserve the existing one-second polling interval and tries limit. Reject reloads without a status URL before issuing a request, and keep response parsing lazy.

Validation: full Ruby 3.3 suite passes (128 tests, 257 assertions; optional live-upload and signature-parity tests skipped), plus bundle exec standardrb and git diff --check. Regression tests cover automatic recovery, manual reloads, missing retry metadata, exhausted tries, and missing status URLs.

Compatibility: constrain JSON to versions below 3 because Ruby 3.1 resolves MultiJson 1.19, whose positional parsing options are incompatible with JSON 3. This dependency constraint is shared across the four independent fixes.

The four fixes also merge together cleanly. Their combined Ruby 3.3 suite passes with Node signature parity enabled: 147 tests, 321 assertions, with only the optional live upload skipped.

@codecov-commenter

codecov-commenter commented Oct 13, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.42%. Comparing base (79535b2) to head (3f47189).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #84      +/-   ##
==========================================
+ Coverage   99.40%   99.42%   +0.01%     
==========================================
  Files           9        9              
  Lines         336      345       +9     
  Branches       38       41       +3     
==========================================
+ Hits          334      343       +9     
  Misses          1        1              
  Partials        1        1              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

2 participants