Skip to content

Conversation

@aleflm
Copy link

@aleflm aleflm commented Jan 4, 2026

This PR integrates the Firo blockchain into the address-codec package by defining specific network constants and updating the encoder, decoder, and validator modules. These changes enable the system to correctly handle Firo addresses—supporting both P2PKH and P2SH formats—using standard Bitcoin library primitives similar to existing chain implementations.

The update also extends the rosen-extractor package by introducing FiroRosenExtractor and FiroRpcRosenExtractor classes. These components are designed to parse lock transactions from serialized JSON or direct RPC responses, specifically looking for OP_RETURN metadata to identify bridge requests and validating that assets are correctly sent to the lock address.

To support these features, the PR includes new utility functions for generating Firo output scripts and parsing bridge data. The implementation is verified through comprehensive unit tests for address manipulation and transaction parsing, along with a production integration test suite for validating interactions with a Firo RPC node.

@aleflm aleflm changed the title Feature/dev aleflm add firo Add Firo support to address codec and Rosen extractor Jan 4, 2026
@aleflm aleflm marked this pull request as ready for review January 4, 2026 17:18
Copy link
Member

@RaaCT0R RaaCT0R left a comment

Choose a reason for hiding this comment

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

Please address the GitHub action. It should successfully pass.

Make sure

  • to update and include the package-lock if you've changed any package.json
  • the lint script is executed. It is included in pre-commit, though you may need to run it manually now. In this case, execute npm run lint in both adress-codec and rosen-extractor packages, or just in the root of the repository.

aleflm pushed a commit to navidR/utils that referenced this pull request Jan 7, 2026
- Use Bitcoin approach for pasing
- Remove some test cases
- Remove unused axios and bs58check devDependencies
- Some other minor changes
aleflm pushed a commit to navidR/utils that referenced this pull request Jan 7, 2026
- Use Bitcoin approach for pasing
- Remove some test cases
- Remove unused axios and bs58check devDependencies
- Some other minor changes
@aleflm aleflm force-pushed the feature/dev-aleflm-add-firo branch from 1ec8aec to 1512a8c Compare January 7, 2026 10:44
aleflm pushed a commit to navidR/utils that referenced this pull request Jan 7, 2026
- Use Bitcoin approach for pasing
- Remove some test cases
- Remove unused axios and bs58check devDependencies
- Some other minor changes
@aleflm aleflm force-pushed the feature/dev-aleflm-add-firo branch from 1512a8c to 33e16cf Compare January 7, 2026 10:52
aleflm pushed a commit to navidR/utils that referenced this pull request Jan 8, 2026
- Use Bitcoin approach for parsing
- Remove some test cases
- Remove unused axios and bs58check devDependencies
- Regenerate package-lock.json with npm 11.6.2
- Some other minor changes
@aleflm aleflm force-pushed the feature/dev-aleflm-add-firo branch from 33e16cf to 13f6f7c Compare January 8, 2026 09:26
@navidR
Copy link

navidR commented Jan 17, 2026

@RaaCT0R comments applied, ready for another round of reviews.

@navidR navidR force-pushed the feature/dev-aleflm-add-firo branch from 6cd2496 to 7229d70 Compare January 18, 2026 14:57
@navidR navidR force-pushed the feature/dev-aleflm-add-firo branch from b51a14e to 824f862 Compare January 27, 2026 09:14
@navidR navidR force-pushed the feature/dev-aleflm-add-firo branch from 824f862 to 2b29b8f Compare January 28, 2026 12:04
@navidR
Copy link

navidR commented Jan 28, 2026

Rebased to the latest change in the dev branch. No content change related to this PR.

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.

3 participants