Skip to content

Conversation

paul-chain
Copy link

Closes #N/A

Description

Adds a new WebSocket adapter for Blocksize Capital State API to provide real-time aggregated price feeds.

Changes

  • New adapter implementation for Blocksize Capital State API
  • WebSocket transport with authentication and subscription management
  • Out-of-order message detection and filtering
  • Comprehensive test suite and integration tests
  • Documentation and setup instructions

Features

  • Real-time WebSocket streaming: Live price feed updates via WebSocket connection
  • Provider timestamp preservation: Maintains original timestamps for data traceability
  • Multiple quote currencies: Support for USD and ETH quote currencies
  • Robust error handling: Comprehensive error handling and logging
  • Rate limiting: Built-in rate limiting configuration (60 requests/minute)

Supported Assets

  • CBBTC (Coinbase Wrapped BTC)
  • ALETH (Alchemix ETH)
  • CBETH (Coinbase Staked ETH)

Steps to Test

Automated Test

  1. Navigate to the root of the external-adapters-js repo
  2. Build the adapter: yarn workspace @chainlink/blocksize-capital-state-adapter build
  3. Run the test: yarn test packages/sources/blocksize-capital-state/test/integration/adapter.test.ts

Manual Testing

  1. Set environment variables: API_KEY="your-key-here"
  2. Build the adapter: yarn workspace @chainlink/blocksize-capital-state-adapter build
  3. Start the adapter: API_KEY="..." yarn start blocksize-capital-state
  4. Run test script: bash packages/sources/blocksize-capital-state/test/test-ws.sh
  5. Verify WebSocket connections and real-time price updates work correctly

Quality Assurance

  • If a new adapter was made, or an existing one was modified so that its environment variables have changed, update the relevant infra-k8s configuration file.
  • If a new adapter was made, or an existing one was modified so that its environment variables have changed, update the relevant adapter-secrets configuration file or update the soak testing blacklist.
  • If a new adapter was made, or a new endpoint was added, update the test-payload.json file with relevant requests.
  • The branch naming follows git flow (feature/x, chore/x, release/x, hotfix/x, fix/x) or is created from Jira.
  • This is related to a maximum of one Jira story or GitHub issue.
  • Types are safe (avoid TypeScript/TSLint features like any and disable, instead use more specific types).
  • All code changes have 100% unit and integration test coverage. If testing is not applicable or too difficult to justify doing, the reasoning should be documented explicitly in the PR.

## Description
Adds a new WebSocket adapter for Blocksize Capital State API to provide real-time aggregated price feeds.

## Changes
- New adapter implementation for Blocksize Capital State API
- WebSocket transport with authentication and subscription management
- Out-of-order message detection and filtering
- Comprehensive test suite and integration tests
- Documentation and setup instructions

## Features
- Real-time WebSocket streaming data
- Provider timestamp preservation for data traceability
- Support for USD and ETH quote currencies
- Robust error handling and logging
- Rate limiting configuration

This adapter enables access to Blocksize Capital's aggregated state price data
for supported cryptocurrency pairs (CBBTC, ALETH, CBETH).
Copy link

changeset-bot bot commented Sep 16, 2025

⚠️ No Changeset found

Latest commit: bb5a573

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@paul-chain
Copy link
Author

Closing in favor of PR #4026 with correct Jira ticket branch naming (OPDATA-4086)

@paul-chain paul-chain closed this Sep 16, 2025
@paul-chain paul-chain deleted the feat/blocksize-capital-state-adapter branch September 16, 2025 15:55
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