Skip to content

Deploy to production: strikes removal, worker 301 redirects, plan pricing updates#143

Merged
MarketDataApp merged 8 commits into
mainfrom
staging
Apr 9, 2026
Merged

Deploy to production: strikes removal, worker 301 redirects, plan pricing updates#143
MarketDataApp merged 8 commits into
mainfrom
staging

Conversation

@MarketDataApp

Copy link
Copy Markdown
Owner

Summary

Deploys the accumulated staging changes to production. Seven commits, three themes:

Options strikes endpoint removal

  • Deletes Strikes endpoint docs across API, Python, PHP, and Go SDKs (4 pages, ~1,140 lines)
  • Scrubs stale strikes references from client docs, troubleshooting pages, status endpoint sample, and sdk-requirements.md
  • Adds client-side redirects for all four removed URLs → the equivalent chain page
  • Note: the /v1/options/strikes/ API endpoint itself remains live for backward compatibility

Worker: meta-refresh → HTTP 301 conversion

  • worker/handler.js now detects the small HTML stubs emitted by docusaurus-plugin-client-redirects and returns a proper 301 with an absolute Location header instead of proxying the meta-refresh HTML
  • Gives non-browser clients (curl, fetch, bots, LLM scrapers) real redirect semantics
  • Fixes a post-deploy test failure where the integration suite iterated the prod sitemap with Accept: text/markdown and hit redirect stubs as raw HTML
  • Adds 8 unit tests covering the main path and edge cases (staging hostname preservation, absolute URL passthrough, large-body skip, non-HTML skip, non-2xx skip, single-quoted attributes)

Plan pricing and content tweaks

  • Current pricing added to all plan pages; upgrade examples refreshed
  • Retired subscribers heading reworded; work history requirements clarified
  • syncThemeCookie() upgraded to @marketdataapp/ui v4.3.0 to preserve system mode
  • API sidebar reordered: Markets now below Dates and Times

Test plan

  • Worker unit tests pass locally (43/43)
  • Staging build + deploy green
  • Staging post-deploy integration tests green (previously failing strikes URLs now follow 301s to chain and resolve to markdown)
  • Staging e2e tests green
  • Prod post-deploy tests green after merge
  • Spot-check www.marketdata.app/docs/api/options/strikes redirects to /chain
  • Spot-check curl -I www.marketdata.app/docs/api/troubleshooting/http-status-codes returns 301 (not a 200 meta-refresh stub)

…system mode

The custom MutationObserver in themeCookieSync.js wrote the theme cookie on
every data-theme change, silently promoting system-mode visitors (no cookie)
out of system mode the first time the OS or Docusaurus flipped the attribute.
syncThemeCookie() only writes the cookie when one already exists, so
OS-following users stay OS-following.

Closes #142
…ribers

Expand the retired subscribers section to explicitly require employer,
job title, and end date. Rename "Unemployed" to "Not Currently Working"
to use more neutral language.
Plan pages previously lacked any monthly/annual price information, and the
upgrade examples used an outdated $108/year Starter annual price.

- Add Pricing sections to Free Forever, Starter, Trader, Quant, Prime
- Add Pricing sections to Starter Trial and Trader Trial clarifying $0 for
  30 days, no card required, no renewal/extension, and automatic conversion
  to Free Forever (never auto-billed) when the trial ends
- Update upgrades.md: Starter annual is now $144/year ($12/mo billed
  annually) and recalculate the affected upgrade-credit examples
Deletes the Strikes endpoint docs across API, Python, PHP, and Go SDK
references, scrubs remaining mentions, and adds client-side redirects
from the removed pages to the equivalent chain endpoint. The API
endpoint itself remains live for backward compatibility.
The client-redirects plugin emits tiny HTML files with a
<meta http-equiv="refresh"> tag. The worker now detects those stubs
coming back from Pages and returns a proper HTTP 301 instead, which
gives non-browser clients (curl, fetch, bots, LLM scrapers) real
redirect semantics and fixes the post-deploy integration tests, which
fetch every URL in the production sitemap with Accept: text/markdown
and expect redirected paths to resolve to markdown on the target.
@socket-security

socket-security Bot commented Apr 9, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​marketdataapp/​ui@​4.0.0 ⏵ 4.3.0100100100100100

View full report

@MarketDataApp MarketDataApp merged commit 847ac98 into main Apr 9, 2026
7 checks passed
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