Skip to content

Conversation

@SwenSchaeferjohann
Copy link
Contributor

No description provided.

@github-advanced-security
Copy link
Contributor

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jun 11, 2025

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch main

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

dependabot bot and others added 28 commits July 1, 2025 06:59
Bumps [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) from 19.1.7 to 19.1.8.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

---
updated-dependencies:
- dependency-name: "@types/react"
  dependency-version: 19.1.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@types/chai](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chai) from 5.0.1 to 5.2.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chai)

---
updated-dependencies:
- dependency-name: "@types/chai"
  dependency-version: 5.2.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
#1839)

Bumps [@solana/wallet-adapter-react](https://github.com/anza-xyz/wallet-adapter) from 0.15.38 to 0.15.39.
- [Release notes](https://github.com/anza-xyz/wallet-adapter/releases)
- [Commits](https://github.com/anza-xyz/wallet-adapter/compare/@solana/wallet-adapter-react@0.15.38...@solana/wallet-adapter-react@0.15.39)

---
updated-dependencies:
- dependency-name: "@solana/wallet-adapter-react"
  dependency-version: 0.15.39
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* wip

* wip

* wip
* refactor: light-sdks detach account metas from account infos

* Update sdk-libs/sdk-pinocchio/src/error.rs

Co-authored-by: Swen Schäferjohann <42959314+SwenSchaeferjohann@users.noreply.github.com>

---------

Co-authored-by: Swen Schäferjohann <42959314+SwenSchaeferjohann@users.noreply.github.com>
* bump photon hash

* refactor forester v2 processing

* remove debug prints

* cleanup

* Set test environment variables for v1 and v2 test modes

* add docs for process_stream function

* fail-fast proof generation with recovery

* spawn forester executing test transactions in e2e test

* Add tmate debugging session to forester tests workflow

* use new keypair for TestMode::Local in forester e2e tests

* reduce rpc calls for v2 processing

* add tmate to forester ci

* remove tmate from forester tests ci

* format

* add get_registration_phase_start_slot utility function and update e2e test to use it

* remove unused imports

* update photon git commit reference in constants and install script

* update photon commit hash

* update photon commit hash

* refactor: optimize batch processing and instruction streaming
* redis queue cleanup job

* format

* format
…xer() (#1864)

* refactor: removed mutexed indexer from forester, instead use rpc.indexer()

* refactor: simplify generic constraints in instruction stream functions

* Remove unused imports in tests

* ignore legacy e2e test (photon needs to support custom trees before we
can re-enable it)

* Potential fix for code scanning alert no. 102: Workflow does not contain permissions

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* refactor: copy create_account_instruction

* refactor: copy TreeAccounts

* moved register test forester to light-program-test

* removed forester-utils dep

* refactor: test forester to light-test-utils

* fix lint

* fix tests

* chore: bump light-program-test version 0.13.1 -> 0.13.2

* Update program-tests/utils/src/setup_forester.rs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* refactor: move forester_update -> light-test-utils"

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* fix: check cpi context account

* fix tests
* feat: zero-copy-derive

* remove commented tests
* fix: unknown api error, and StateLookuptable not found

* fix: get_latest_active_state_trees for localnet with hardcoded values

* fix: lint
* feat: add processor mode selection to forester CLI

Add the ability to select processing mode (v1/v2/all trees) via a new
CLI flag.

* fix priority_fee_test

* - increase timeout in forester CI worksflow
- rename test
Added log rotation with 48-hour retention (2 days) and fallback to
stdout logging when file appender creation fails.
---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 24.0.15
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [mocha](https://github.com/mochajs/mocha) from 11.5.0 to 11.7.1.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md)
- [Commits](mochajs/mocha@v11.5.0...v11.7.1)

---
updated-dependencies:
- dependency-name: mocha
  dependency-version: 11.7.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Enables authentication via X-API-Key or Bearer token headers. Public
/health endpoint remains accessible while all other routes require
authentication when PROVER_API_KEY env var is set.
* chore: add example repos to readme

* chore: remove legacy examples
* fix: batched-merkle-tree assign tree capacity

* chore: add root history array capacity check

* fix: include zkp batch size in merkle tree update capacity check

* fix: add mut checks for sol token pool, decompression recpient account infos

* chore: add validate_batched_address_tree_params

* fix: check for duplicate input and read only accounts

* test: check for duplicate input and read only accounts
Bumps [prettier](https://github.com/prettier/prettier) from 3.4.2 to 3.6.2.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](prettier/prettier@3.4.2...3.6.2)

---
updated-dependencies:
- dependency-name: prettier
  dependency-version: 3.6.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
ananas-block and others added 30 commits January 17, 2026 23:55
* refactor rentfree to builder pattern

* add docs

* refactor light mint, and docs

* stash tests

* amm test instructions compile

* fix amm test

* format
* refactor(macros): rename traits/ to account/ in rentfree module

Rename the traits/ directory to account/ to better reflect that these
macros are for account data structs (like UserRecord), not generic traits.

- src/rentfree/traits/ -> src/rentfree/account/
- docs/traits/ -> docs/account/
- Update all import paths and documentation references

* stash

* stash tests

* fix amm test 1 by 1

* fix tests, add light mint docs, allow empty CreateAccountProof

* format, use correct anchor spl branch

* added full integration tests for all instructions, fixed seed params struct generation, added full account struct tests

* test: compress as features

* stash

* feat: add create cmints

* add multiple mint support to sdk macros
* refactor: sdk macros increase handle errors correctly

* refactor: improve macros error handling

* feat: macros metadata

* fix: cannot infer type

* remove dead code

* add more tests

* fix seeds for more cases

* reduce number of tested mint creations to 3
* chore: rename macros to light

* rentfree token attribute -> light_account(token

* more renaming

* fix: feedback
add csdk-anchor-full-derived-test-sdk

* cleanup, rename crates, move interface to client

* address reviews, remove solana_program dep in light-client
* feat: init token, ata macros

* format

* chore: make ctx: Context arg naming general

* chore: generalize instruction data parsing
* set default top up to 0

* chore: make light program test independent of registry and token programs

* refactor: sdk lib features and reexports

* revert LightHasher light-sdk requirement

* fix

* bump light anchor

* make v2 default

* fix lint

* chore: rename light-token-sdk -> light-token

* rename light_token::token -> instruction

* fix: light-token docs

* rename ata
* feat: implement HTTP API server with health, status, and metrics endpoints; add dashboard UI

- Added `spawn_api_server` to serve HTTP endpoints for health checks, system status, and metrics.
- Added static `dashboard.html` for a web-based status UI.

* format

* import CommitmentLevel from solana_commitment_config instead of solana_sdk

* create static directory in forester's Dockerfile and copy static files

* feat: enhance epoch monitoring and metrics tracking; improve error handling and logging

* refactor: replace blocking status retrieval with async

* feat: enhance error handling in API server and metrics retrieval; improve dashboard script for better slot timing

* fix: improve metrics parsing logic to handle malformed lines and enhance robustness

* enhance graceful shutdown and error handling

* - Added retry logic with exponential backoff for fetching state proofs.
- Improved batch parsing and queue processes with consolidated metadata parsing.
- Upgraded metrics tracking by replacing `GaugeVec` with `HistogramVec` and enhancing proof counting.
- Config updates: simplified environment variable names for clarity and consistency.
- Enhanced dashboard with refresh guards and adaptive intervals for better responsiveness.

* refactor error handling in account retrieval

* fix: add unwraps to AccountZeroCopy in tests

* fix: add error handling for metric push failures in EpochManager

* cleanup

* fix: correct alert message format

* feat: add retry logic for protocol config and slot retrieval with exponential backoff; improve error handling with rate limit detection

* fix: replace biased select with timeout for proof reception to prevent indefinite blocking

* feat: enhance BufferEntry to include old and new roots for caching

* fix token-interface
* fix: light_program for only one mint

* fix: macros for single accounts
* test: cmint resize

* chore: update pinocchio-token-program dep

* fix renamings

* fix: reorder imports in cmint_resize.rs for lint

* fix lint

* fix
* feat: add fee payer to light token ixs

* fix: add missing fee_payer field to MintTo struct initializations

* fix: add system_program to CToken instruction accounts for rent top-up CPIs

The CToken program needs System Program in transaction accounts when
performing rent top-ups via CPI. This adds system_program at index 3
for MintTo, Burn, and Transfer instructions (and their checked variants),
with fee_payer moved to index 4.

Changes:
- Program: Update account indices (system_program=3, fee_payer=4)
- SDK: Add system_program to instruction builders and CPI structs
- Tests: Update BurnCpi usages with system_program field

* fix: add system_program to sdk-light-token-test transfer examples

Add the missing system_program field to TransferCpi and TransferCheckedCpi
struct initializers in the example test program, and pass the system_program
account from the tests.

This fixes the build failure caused by the new required system_program
field added to the CPI structs for rent top-up support.

* refactor: slice accounts to exact count for pinocchio transfer calls

Pass only the expected accounts to pinocchio-token-program transfer
functions as a defensive measure:
- process_transfer: slice to 3 accounts [source, destination, authority]
- process_transfer_checked: slice to 4 accounts [source, mint, destination, authority]

While pinocchio tolerates extra accounts via `remaining @ ..` pattern,
explicitly slicing is cleaner and more robust.
* chore: impl instruction data feedback
* feat: add instruction decoder
* feat: add instruction decoder derive
#2201)

* fix: instruction decoder account parsing and naming for light token and system program

* fix feedback
* feat: forester: pda & mint compression

* fix: update error field in ForesterConfig and improve SinglePubkeyRecord derive attributes

* refactor rent exemption calculations

* format

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup

* cleanup
* refactor build and test scripts to use 'just' instead of 'npx nx'

* fix justfile

* refactor: replace just installation script with action and update build-cli dependency

* fix justfile

* add justfile for prover

* justfile mods

* cleanup

* fix

* cleanup

* cleanup
* fix parsing, unify validation, refactor bumps to be similar to anchor

* refactor: macro syntax to match anchor

* fix feedback
* chore(libs): bump versions

* fix: skip dry-run validation for interdependent packages

The cargo publish --dry-run command fails when packages in the same
release batch depend on each other, because it tries to resolve
dependencies from crates.io where the new versions don't exist yet.

This fix:
- Detects interdependencies between packages being released
- Skips dry-run when interdependencies are found
- Relies on the compilation check to validate the packages
- Allows actual publish to proceed (where cargo handles ordering)

Fixes the validation failure for releases that include packages with
internal dependencies (e.g., light-program-test depending on
light-instruction-decoder).
* refactor: separate compressed tokens from light-token

* remove backwards compat reexport

* fix: add cpi-context feature to light-compressed-token-sdk

The cpi-context feature was missing from light-compressed-token-sdk,
causing the DecompressFullAccounts implementation to not pass the
cpi_context to SystemAccountMetaConfig. This resulted in
test_decompress_full_cpi_with_context failing with error 20001
(AccountOwnedByWrongProgram).

* refactor and fix tests

* fix lint and impl feedback
…d accounts (#2208)

* refactor: expose DECOMPRESSED_DISCRIMINATOR and pubkey in decompressed accounts

* fix: reduce DECOMPRESSED_PDA_DISCRIMINATOR to fix i64
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.

8 participants