tag:github.com,2008:https://github.com/Lightprotocol/light-protocol/releasesTags from light-protocol2026-03-18T01:30:49Ztag:github.com,2008:Repository/429237278/light-registry-v2.3.12026-03-18T01:51:20ZDevnet program release v2.3.1<p>refactor: simplify nullify_state_v1_multi proof dedup encoding</p>
<p>Replace the complex multi-scheme encoding (1-bit bitvec for proof_2,
<br />2-bit source selectors for proof_3/proof_4, separate shared_top_node)
<br />with a uniform pool-based approach:</p>
<p>- Deduplicated node pool built level-by-level across all proofs
<br />- Each proof (including proof_1) selects 16 nodes from the pool via
<br /> a u32 bitvec using the bitvec crate
<br />- Removes proof_2_shared, proof_3_source, proof_4_source, shared_top_node
<br />- Adds proof_bitvecs: [u32; 4]
<br />- Bumps NULLIFY_STATE_V1_MULTI_MAX_NODES from 26 to 27 (10-byte margin)
<br />- Hardens count_from_leaf_indices to reject non-trailing sentinels</p>ananas-blocktag:github.com,2008:Repository/429237278/light-system-program-v2.3.02026-03-10T18:58:04ZMainnet program release v2.3.0ananas-blocktag:github.com,2008:Repository/429237278/light-registry-v2.3.02026-03-10T19:01:02ZDevnet program release v2.3.0ananas-blocktag:github.com,2008:Repository/429237278/light-compressed-token-v2.4.02026-03-10T18:58:00ZMainnet program release v2.4.0ananas-blocktag:github.com,2008:Repository/429237278/account-compression-v2.2.02026-03-10T19:00:59ZDevnet program release v2.2.0ananas-blocktag:github.com,2008:Repository/429237278/light-registry-v2.2.12026-03-02T19:16:46ZMainnet program release v2.2.1<p>feat: allow foresters to register at any time by disabling registrati…</p>
<p>…on phase time check (<a class="issue-link js-issue-link" href="https://github.com/Lightprotocol/light-protocol/pull/2321">#2321</a>)</p>
<p>* feat: allow foresters to register at any time by disabling registration phase time check</p>
<p>* test: add register any time functional test</p>
<p>---------</p>
<p>Co-authored-by: ananas <[email protected]></p>ananas-blocktag:github.com,2008:Repository/429237278/photon-api-v0.56.02026-02-27T15:45:56Zphoton-api-v0.56.0<p>feat: forester dashboard + compression improvements (<a class="issue-link js-issue-link" href="https://github.com/Lightprotocol/light-protocol/pull/2310">#2310</a>)</p>
<p>* fix: update account data handling to strip discriminator prefix and include discriminator length</p>
<p>* chore: update photon subproject and refactor account data handling to remove discriminator length</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* feat: add --helius-rpc cli flag
<br />feat: add support for getProgramAccounts standard rpc calls for compression
<br />feat: structured error logging</p>
<p>* feat: enhance compressible data tracking</p>
<p>- Introduced `forester_api_urls` argument in `DashboardArgs` for specifying multiple API base URLs.
<br />- Enhanced `EpochManager` to handle non-retryable registration errors gracefully.
<br />- Implemented `CompressibleTrackerHandles` struct to manage multiple trackers for compressible data.
<br />- Refactored `initialize_compressible_trackers` to streamline tracker initialization and bootstrap processes.
<br />- Updated `run_pipeline_with_run_id` to accept preconfigured tracker handles, improving modularity.
<br />- Modified `main` function to initialize compressible trackers and manage shutdown signals effectively.</p>
<p>* fix: improve transaction handling in compressors</p>
<p>- Enhanced error handling in `CTokenCompressor`, `MintCompressor`, and `PdaCompressor` to manage pending states more effectively.
<br />- Added checks to ensure accounts are marked as pending during transaction processing.</p>
<p>chore: update epoch manager to check eligibility for compression</p>
<p>- Modified `dispatch_compression`, `dispatch_pda_compression`, and `dispatch_mint_compression` to include eligibility checks based on the current light slot.</p>
<p>refactor: improve account tracking with atomic counters</p>
<p>- Introduced `compressed_count` and `pending` sets in account trackers for better management of compression states.
<br />- Updated `CompressibleTracker` trait to include methods for managing pending accounts and counting compressed accounts.</p>
<p>fix: ensure proper handling of closed accounts in trackers</p>
<p>- Added logic to remove closed accounts from trackers in `CTokenAccountTracker`, `MintAccountTracker`, and `PdaAccountTracker`.</p>
<p>feat: add usePhotonStats hook for fetching photon statistics</p>
<p>- Implemented a new hook `usePhotonStats` using SWR for fetching photon statistics from the API.
<br />- Introduced error handling for API responses.</p>
<p>refactor: enhance utility functions for address exploration</p>
<p>- Added `explorerUrl` function to generate Solana explorer URLs based on the current network.
<br />- Improved `formatSlotCountdown` to handle additional parameters for better status reporting.</p>
<p>feat: extend forester types with new statistics</p>
<p>- Updated `AggregateQueueStats`, `ForesterStatus`, and related interfaces to include new fields for batch processing statistics.
<br />- Introduced `PhotonStats` interface for tracking photon-related metrics.</p>
<p>* fix: improve error handling and method consistency in compressors and state management</p>
<p>* feat: add transaction verification to compressors and refactor MintAccountTracker initialization</p>
<p>* fix: improve transaction confirmation handling and error reporting in compressors</p>
<p>* fix: remove unnecessary pubkey collection before marking accounts as pending</p>
<p>* chore: update subproject commit for photon dependency</p>
<p>* fix: implement retry logic for transaction status verification</p>
<p>* refactor transaction handling</p>ananas-blocktag:github.com,2008:Repository/429237278/light-token-v0.23.02026-02-27T15:46:17Zlight-token-v0.23.0<p>feat: forester dashboard + compression improvements (<a class="issue-link js-issue-link" href="https://github.com/Lightprotocol/light-protocol/pull/2310">#2310</a>)</p>
<p>* fix: update account data handling to strip discriminator prefix and include discriminator length</p>
<p>* chore: update photon subproject and refactor account data handling to remove discriminator length</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* feat: add --helius-rpc cli flag
<br />feat: add support for getProgramAccounts standard rpc calls for compression
<br />feat: structured error logging</p>
<p>* feat: enhance compressible data tracking</p>
<p>- Introduced `forester_api_urls` argument in `DashboardArgs` for specifying multiple API base URLs.
<br />- Enhanced `EpochManager` to handle non-retryable registration errors gracefully.
<br />- Implemented `CompressibleTrackerHandles` struct to manage multiple trackers for compressible data.
<br />- Refactored `initialize_compressible_trackers` to streamline tracker initialization and bootstrap processes.
<br />- Updated `run_pipeline_with_run_id` to accept preconfigured tracker handles, improving modularity.
<br />- Modified `main` function to initialize compressible trackers and manage shutdown signals effectively.</p>
<p>* fix: improve transaction handling in compressors</p>
<p>- Enhanced error handling in `CTokenCompressor`, `MintCompressor`, and `PdaCompressor` to manage pending states more effectively.
<br />- Added checks to ensure accounts are marked as pending during transaction processing.</p>
<p>chore: update epoch manager to check eligibility for compression</p>
<p>- Modified `dispatch_compression`, `dispatch_pda_compression`, and `dispatch_mint_compression` to include eligibility checks based on the current light slot.</p>
<p>refactor: improve account tracking with atomic counters</p>
<p>- Introduced `compressed_count` and `pending` sets in account trackers for better management of compression states.
<br />- Updated `CompressibleTracker` trait to include methods for managing pending accounts and counting compressed accounts.</p>
<p>fix: ensure proper handling of closed accounts in trackers</p>
<p>- Added logic to remove closed accounts from trackers in `CTokenAccountTracker`, `MintAccountTracker`, and `PdaAccountTracker`.</p>
<p>feat: add usePhotonStats hook for fetching photon statistics</p>
<p>- Implemented a new hook `usePhotonStats` using SWR for fetching photon statistics from the API.
<br />- Introduced error handling for API responses.</p>
<p>refactor: enhance utility functions for address exploration</p>
<p>- Added `explorerUrl` function to generate Solana explorer URLs based on the current network.
<br />- Improved `formatSlotCountdown` to handle additional parameters for better status reporting.</p>
<p>feat: extend forester types with new statistics</p>
<p>- Updated `AggregateQueueStats`, `ForesterStatus`, and related interfaces to include new fields for batch processing statistics.
<br />- Introduced `PhotonStats` interface for tracking photon-related metrics.</p>
<p>* fix: improve error handling and method consistency in compressors and state management</p>
<p>* feat: add transaction verification to compressors and refactor MintAccountTracker initialization</p>
<p>* fix: improve transaction confirmation handling and error reporting in compressors</p>
<p>* fix: remove unnecessary pubkey collection before marking accounts as pending</p>
<p>* chore: update subproject commit for photon dependency</p>
<p>* fix: implement retry logic for transaction status verification</p>
<p>* refactor transaction handling</p>ananas-blocktag:github.com,2008:Repository/429237278/light-token-types-v0.23.02026-02-27T15:46:19Zlight-token-types-v0.23.0<p>feat: forester dashboard + compression improvements (<a class="issue-link js-issue-link" href="https://github.com/Lightprotocol/light-protocol/pull/2310">#2310</a>)</p>
<p>* fix: update account data handling to strip discriminator prefix and include discriminator length</p>
<p>* chore: update photon subproject and refactor account data handling to remove discriminator length</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* feat: add --helius-rpc cli flag
<br />feat: add support for getProgramAccounts standard rpc calls for compression
<br />feat: structured error logging</p>
<p>* feat: enhance compressible data tracking</p>
<p>- Introduced `forester_api_urls` argument in `DashboardArgs` for specifying multiple API base URLs.
<br />- Enhanced `EpochManager` to handle non-retryable registration errors gracefully.
<br />- Implemented `CompressibleTrackerHandles` struct to manage multiple trackers for compressible data.
<br />- Refactored `initialize_compressible_trackers` to streamline tracker initialization and bootstrap processes.
<br />- Updated `run_pipeline_with_run_id` to accept preconfigured tracker handles, improving modularity.
<br />- Modified `main` function to initialize compressible trackers and manage shutdown signals effectively.</p>
<p>* fix: improve transaction handling in compressors</p>
<p>- Enhanced error handling in `CTokenCompressor`, `MintCompressor`, and `PdaCompressor` to manage pending states more effectively.
<br />- Added checks to ensure accounts are marked as pending during transaction processing.</p>
<p>chore: update epoch manager to check eligibility for compression</p>
<p>- Modified `dispatch_compression`, `dispatch_pda_compression`, and `dispatch_mint_compression` to include eligibility checks based on the current light slot.</p>
<p>refactor: improve account tracking with atomic counters</p>
<p>- Introduced `compressed_count` and `pending` sets in account trackers for better management of compression states.
<br />- Updated `CompressibleTracker` trait to include methods for managing pending accounts and counting compressed accounts.</p>
<p>fix: ensure proper handling of closed accounts in trackers</p>
<p>- Added logic to remove closed accounts from trackers in `CTokenAccountTracker`, `MintAccountTracker`, and `PdaAccountTracker`.</p>
<p>feat: add usePhotonStats hook for fetching photon statistics</p>
<p>- Implemented a new hook `usePhotonStats` using SWR for fetching photon statistics from the API.
<br />- Introduced error handling for API responses.</p>
<p>refactor: enhance utility functions for address exploration</p>
<p>- Added `explorerUrl` function to generate Solana explorer URLs based on the current network.
<br />- Improved `formatSlotCountdown` to handle additional parameters for better status reporting.</p>
<p>feat: extend forester types with new statistics</p>
<p>- Updated `AggregateQueueStats`, `ForesterStatus`, and related interfaces to include new fields for batch processing statistics.
<br />- Introduced `PhotonStats` interface for tracking photon-related metrics.</p>
<p>* fix: improve error handling and method consistency in compressors and state management</p>
<p>* feat: add transaction verification to compressors and refactor MintAccountTracker initialization</p>
<p>* fix: improve transaction confirmation handling and error reporting in compressors</p>
<p>* fix: remove unnecessary pubkey collection before marking accounts as pending</p>
<p>* chore: update subproject commit for photon dependency</p>
<p>* fix: implement retry logic for transaction status verification</p>
<p>* refactor transaction handling</p>ananas-blocktag:github.com,2008:Repository/429237278/light-token-pinocchio-v0.23.02026-02-27T15:46:14Zlight-token-pinocchio-v0.23.0<p>feat: forester dashboard + compression improvements (<a class="issue-link js-issue-link" href="https://github.com/Lightprotocol/light-protocol/pull/2310">#2310</a>)</p>
<p>* fix: update account data handling to strip discriminator prefix and include discriminator length</p>
<p>* chore: update photon subproject and refactor account data handling to remove discriminator length</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* chore: update photon subproject to latest commit</p>
<p>* feat: add --helius-rpc cli flag
<br />feat: add support for getProgramAccounts standard rpc calls for compression
<br />feat: structured error logging</p>
<p>* feat: enhance compressible data tracking</p>
<p>- Introduced `forester_api_urls` argument in `DashboardArgs` for specifying multiple API base URLs.
<br />- Enhanced `EpochManager` to handle non-retryable registration errors gracefully.
<br />- Implemented `CompressibleTrackerHandles` struct to manage multiple trackers for compressible data.
<br />- Refactored `initialize_compressible_trackers` to streamline tracker initialization and bootstrap processes.
<br />- Updated `run_pipeline_with_run_id` to accept preconfigured tracker handles, improving modularity.
<br />- Modified `main` function to initialize compressible trackers and manage shutdown signals effectively.</p>
<p>* fix: improve transaction handling in compressors</p>
<p>- Enhanced error handling in `CTokenCompressor`, `MintCompressor`, and `PdaCompressor` to manage pending states more effectively.
<br />- Added checks to ensure accounts are marked as pending during transaction processing.</p>
<p>chore: update epoch manager to check eligibility for compression</p>
<p>- Modified `dispatch_compression`, `dispatch_pda_compression`, and `dispatch_mint_compression` to include eligibility checks based on the current light slot.</p>
<p>refactor: improve account tracking with atomic counters</p>
<p>- Introduced `compressed_count` and `pending` sets in account trackers for better management of compression states.
<br />- Updated `CompressibleTracker` trait to include methods for managing pending accounts and counting compressed accounts.</p>
<p>fix: ensure proper handling of closed accounts in trackers</p>
<p>- Added logic to remove closed accounts from trackers in `CTokenAccountTracker`, `MintAccountTracker`, and `PdaAccountTracker`.</p>
<p>feat: add usePhotonStats hook for fetching photon statistics</p>
<p>- Implemented a new hook `usePhotonStats` using SWR for fetching photon statistics from the API.
<br />- Introduced error handling for API responses.</p>
<p>refactor: enhance utility functions for address exploration</p>
<p>- Added `explorerUrl` function to generate Solana explorer URLs based on the current network.
<br />- Improved `formatSlotCountdown` to handle additional parameters for better status reporting.</p>
<p>feat: extend forester types with new statistics</p>
<p>- Updated `AggregateQueueStats`, `ForesterStatus`, and related interfaces to include new fields for batch processing statistics.
<br />- Introduced `PhotonStats` interface for tracking photon-related metrics.</p>
<p>* fix: improve error handling and method consistency in compressors and state management</p>
<p>* feat: add transaction verification to compressors and refactor MintAccountTracker initialization</p>
<p>* fix: improve transaction confirmation handling and error reporting in compressors</p>
<p>* fix: remove unnecessary pubkey collection before marking accounts as pending</p>
<p>* chore: update subproject commit for photon dependency</p>
<p>* fix: implement retry logic for transaction status verification</p>
<p>* refactor transaction handling</p>ananas-block