Skip to content

Feature/vlm benchmark#1

Closed
fedor-konovalenko wants to merge 13 commits into
mainfrom
feature/vlm-benchmark
Closed

Feature/vlm benchmark#1
fedor-konovalenko wants to merge 13 commits into
mainfrom
feature/vlm-benchmark

Conversation

@fedor-konovalenko

Copy link
Copy Markdown

No description provided.

gmorgachev and others added 13 commits February 13, 2026 20:29
* Fix: intersection

* use previous active participant set

* version
* Upgrade template

* Use a portable build of BLST for macos (test) builds (gonka-ai#697)

Running the binaries with the blst binary will cause a SIGILL error when run in an AMD64 container on an ARM64 machine.
But we still want native perf for production, so we added a flag so the portable build is only for local/test builds

* fix: avoid rewriting config on every startup (gonka-ai#644)

* fix: avoid rewriting config on every startup

* chore: use standard logging

---------

Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* fix: minor bugs (gonka-ai#545)

* fix: division by zero ShouldValidate

* fix: add http timeout

* fix: ticker instead timer checkStatusRoutine

* fix: use inference epoch for GetEpochModel in validation

GetEpochModel in validation should use the inference's epoch ID instead
of the current epoch to ensure correct model snapshot is retrieved,
especially for validations from previous epochs.

* fix: based on PR comments

* remove slog usage

---------

Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* security: add request body size limit to prevent DoS (gonka-ai#634)

Add MaxRequestBodySize constant (10 MB) and use http.MaxBytesReader
in readRequestBody to prevent memory exhaustion attacks from
oversized request bodies.

An attacker could previously send arbitrarily large request bodies
to /v1/chat/completions, causing nodes to allocate unbounded memory
and crash from OOM.

Changes:
- Add MaxRequestBodySize constant (10 MB)
- Wrap request body with http.MaxBytesReader in readRequestBody
- Add unit tests for size limit enforcement

Co-authored-by: Alexey Samosadov <alexey@192.168.1.113>
Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* perf(poc): optimize artifact storage throughput (gonka-ai#666)

Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Co-authored-by: John Long <john.long@productscience.ai>

* Model assignment: check if participants got reward for previous epoch (gonka-ai#659)

* Added check if nodes got reward for previous epoch to filter them for POC_SLOT=true eligability

* Fix for issue658

* removed doc of the issue

* Added log on filtering out participant without reward, to do not get POC_SLOT = true
Fixed condition to work out edge case when participant could ve rewarded in some epoch before

* Fixed the tests, as now we need reward for POC_SLOT

Added test to check fltering based on settement works correctly

---------

Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* fix: sanitize from nil participants in executor selection (gonka-ai#643)

* fix: guard nil participants in executor selection

* add test

* remove redundant sanitizeMembers

---------

Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* fix: don't crash API in case of network drop during tryClaimingTaskToAssign (gonka-ai#661)

Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* Add unit tests for node version management (gonka-ai#467) (gonka-ai#640)

Add comprehensive tests for:
- SetCurrentNodeVersion: verify version updates correctly
- ShouldRefreshClients: verify refresh logic when versions differ
- SyncVersionFromChain: verify chain sync updates version appropriately
- TestVersionUpdateTriggersRefresh: end-to-end version change flow

These tests ensure node version is properly tracked and updated when
chain version changes.

Co-authored-by: Alexey Samosadov <alexey@192.168.1.100>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: John Long <john.long@productscience.ai>

* fix: add missing return after error in tryClaimingTaskToAssign (gonka-ai#639)

Fixes gonka-ai#422

The function logged an error when chain RPC was unavailable but
continued execution, causing a nil pointer dereference crash when
trying to access chainStatus.SyncInfo.

Added return statement after the error log to prevent the crash.

Signed-off-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Co-authored-by: Alexey Samosadov <alexey@192.168.1.100>
Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* fix(poc): use chain stat test params instead of hardcoded defaults (gonka-ai#711)

Co-authored-by: Gleb Morgachev <morgachev.g@gmail.com>

* security: fix unsafe type assertions in request processing (gonka-ai#638)

Co-authored-by: AlexeySamosadov <alexey@samosadov.com>

* Fix poc weight function name: calculateInferenceServingWeight > calculatePocParticipatingNodesWeight (gonka-ai#716)


---------

Signed-off-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* IBC Upgrade to v8.7.0 (gonka-ai#708)

* testermint IntDeserializer

* ibc update to v8.7.0

* fix merge change

---------

Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* Testnet: bridge setup scripts (gonka-ai#723)

* Punishment statistics based on on-chain data: dynamic table selection (gonka-ai#561) (gonka-ai#688)

* dynamic table selection (gonka-ai#561)

* dynamic p0 selection (gonka-ai#561)

* fix lookup table

* fix comment

* fix tests

---------

Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* Require proto-go generation matches committed code (gonka-ai#712)

* Require proto-go generation matches committed code

* ci: fix ignite v28 install target

* ci: install ignite from correct package path

* ci: install ignite v28.10.0 from release tarball

* ci: disable ignite telemetry prompt in ci

* ci: run ignite generation non-interactively

* ci: build ignite cli from v28 source

* ci: use full checkout history for ignite

* test: modify proto without regeneration

* Revert, should pass now

* Update, should pass

* Missing added, should fail

* New generated files, should pass

* See if _extra_ files causes an issue

* See if leftover files causes an issue

* Remove leftover files

* Restrict to pushes of .proto files and generated files

* Final reverts

* ci: pin go setup and verify ignite checksum

* ci: pin verify proto workflow runner image

---------

Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* fix(inference): propagate refund error in InvalidateInference (gonka-ai#622)

* fix(inference): propagate refund error in InvalidateInference

refundInvalidatedInference swallows IssueRefund errors and always returns nil.
Executor balance gets deducted before the refund attempt, so when escrow is
underfunded both sides lose - executor balance down, payer never gets refund,
no error returned.

Fix: attempt refund first, only deduct balance after success, return error if it fails.

* Update inference-chain/x/inference/keeper/msg_server_invalidate_inference.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

---------

Signed-off-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* PoC Validation Sampling Optimization (gonka-ai#710)

* Initial upgrade boilerplate

* PoC v2 Fixes/TA Agent Whitelist (gonka-ai#673)

Full PoC V2 activation with model consolidation and access controls.

- PoC V2 fully enabled (tracking mode from v0.2.8 -> full enforcement)
- Network consolidated to single model: `Qwen/Qwen3-235B-A22B-Instruct-2507-FP8`
- Transfer Agent whitelist for request gating
- Guardian tiebreaker for undecided PoC V2 votes
- 24 suspicious participants removed from allowlist

**PoC V2 Activation**
- `PocV2Enabled=true`, `ConfirmationPocV2Enabled=true`
- `WeightScaleFactor=0.262`, `InferenceValidationCutoff=2`, `PocValidationDuration=480`
- All nodes' `POC_SLOT` allocations reset (both `ActiveParticipants` and `EpochGroupData`)
- First V2 epoch runs in grace mode, full enforcement begins the following epoch

**Guardian Tiebreaker**
- When neither valid nor invalid votes reach majority, guardians can break the tie
- Requires: no majority exists, guardians enabled, at least one guardian voted, all voting guardians agree

**Transfer Agent Whitelist**
- New `TransferAgentAccessParams.AllowedTransferAddresses` in params
- Validation in `StartInference` and `FinishInference` messages
- Empty whitelist = all TAs allowed; non-empty = only listed TAs

**Model Consolidation**
- All governance models except `Qwen/Qwen3-235B-A22B-Instruct-2507-FP8` deleted during migration

**Suspicious Participant Removal**
- 24 addresses removed from allowlist (completed POC generation but did not vote at validation)

**Enforced Model Auto-Switch**
- Auto-switches nodes to qwen235B with `--tensor-parallel-size 4 --max-model-len 240000`
- Config enforcement overwrites node model config on load
- Runtime verification queries vLLM `/v1/models` endpoint, triggers redeploy on mismatch
- Disabled via `ENFORCED_MODEL_ID=none`

**Transfer Agent Whitelist**
- Early enforcement in `/chat/completion` before expensive operations
- Cache synced from chain on every new block for O(1) lookups

**[gonka-ai#674](gonka-ai#674) Missed inferences fix**
- Don't punish for missed inferences of non-preserved nodes during PoC
- Don't punish if participant doesn't support the model

**[gonka-ai#678](gonka-ai#678) CPoC downtime penalty redistribution**
- Lower confirmation reward penalty transferred to community pool instead of being lost

**Inference expiry during PoC/CPoC**
- New `InferenceExpiryContext` tracks latest PoC or CPoC range
- Inferences started during PoC/CPoC not punished for expiry

**Bitcoin rewards weight calculation**
- Full weights used for denominator (prevents redistribution of invalidated participants' shares)
- CPoC reductions and invalidated shares go to governance pool

* feat(poc): add validation sampling to reduce complexity from O(N²) to O(N*N_SLOTS)

- add GetSlots algorithm for deterministic weighted random sampling
- store PoCValidationSnapshot on-chain at validation phase start
- filter DAPI validation to only assigned participants
- count slots instead of weight for consensus (weight encoded in slot distribution)
- add ValidationSlots parameter to PocParams (0 = disabled, fallback to O(N²))
- support both regular PoC and confirmation PoC

* fix(poc): harden validation sampling edge cases and add testermint params

- skip negative/zero weights in GetSlots to prevent undefined behavior
- return nil snapshot when not found in query handler
- log fallback to O(N^2) when snapshot missing on chain
- fallback instead of return on DAPI snapshot query error
- add validation_slots and stat_test to testermint AppExport
- add comprehensive unit tests for slots edge cases

* fix(poc): fix concurrent artifact read race causing data corruption

- Use ReadAt instead of Seek+ReadFull for thread-safe concurrent reads
- Add signed response with signer_address, timestamp, signature fields
- Report participants as invalid when validation retries exhausted

* set slots amount

* Fix

* Fix: key

* fix: remove duplicate reportInvalidParticipant function after rebase

* Rever main behaviour

* Review fixes

* clean up

* Optimization

* Better esimtations

* Update security model

* fix tests

* Fix test

* fix(poc): address review feedback

Co-authored-by: Cursor <cursoragent@cursor.com>

* Add missing generated proto files

---------

Co-authored-by: johnlong <john.long@productscience.ai>
Co-authored-by: Gleb Morgachev <morgachev.g@gmail.com>
Co-authored-by: Cursor <cursoragent@cursor.com>

* Create upgrade description

* Add MsgTransferWithVesting for vesting transfers (gonka-ai#641)

* Add unit tests for node version management (gonka-ai#467)

Add comprehensive tests for:
- SetCurrentNodeVersion: verify version updates correctly
- ShouldRefreshClients: verify refresh logic when versions differ
- SyncVersionFromChain: verify chain sync updates version appropriately
- TestVersionUpdateTriggersRefresh: end-to-end version change flow

These tests ensure node version is properly tracked and updated when
chain version changes.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* Add MsgTransferWithVesting message for vesting transfers (gonka-ai#631)

Add a new message type MsgTransferWithVesting to the streamvesting module
that allows transferring tokens with a vesting schedule.

Features:
- Transfer tokens from sender to recipient with vesting over N epochs
- Default vesting period of 180 epochs if not specified
- Tokens vest linearly with remainder going to first epoch
- Full validation of sender/recipient addresses and amount
- CLI command: transfer-with-vesting [recipient] [amount] [vesting-epochs]

Files changed:
- proto/inference/streamvesting/tx.proto: Add message definition
- x/streamvesting/types/tx.pb.go: Generated protobuf code
- x/streamvesting/types/codec.go: Register new message
- x/streamvesting/types/events.go: Add event types
- x/streamvesting/keeper/msg_transfer_with_vesting.go: Handler
- x/streamvesting/keeper/msg_transfer_with_vesting_test.go: Tests
- x/streamvesting/module/autocli.go: CLI configuration

Closes gonka-ai#631

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: address review feedback for MsgTransferWithVesting

- Add MaxVestingEpochs (3650) and MaxCoinsInAmount (10) limits to prevent DoS
- Replace int with int64 for explicit type safety
- Remove unrelated config_test.go changes

Addresses review comments from @patimen.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: regenerate protobuf files for TransferWithVesting RPC method

The API-layer gRPC files were not regenerated after adding the new
TransferWithVesting RPC method, causing panic on startup:
"rpc method TransferWithVesting not found for service inference.streamvesting.Msg"

Regenerated using: buf generate --template buf.gen.pulsar.yaml

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* test: add comprehensive assertions and edge case tests for vesting

Verify actual coin amounts per epoch, test remainder distribution,
max epochs limit, and max coins limit.

Authored-by: Alexey Samosadov
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Regenerating pulsar.go and pb.go files with `ignite` 28.10.0

This is our current version and approved way of generating new proto files

* Add a testermint test for MsgTransferWithVesting

Using the 'gov' account via a governance proposal, specifically, as this will be an important scenario in production.

* test: add comprehensive assertions and edge case tests for vesting

Verify actual coin amounts per epoch, test remainder distribution,
max epochs limit, and max coins limit.

Authored-by: Alexey Samosadov

---------

Co-authored-by: Alexey Samosadov <alexey@192.168.1.100>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Alexey Samosadov <alexey@MacBook-Air-Alexey.local>
Co-authored-by: John Long <john.long@productscience.ai>
Co-authored-by: AlexeySamosadov <alexey@samosadov.com>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* gonka-ai#641 description

* POC weight normalization on real POC time  (gonka-ai#725)

* Initial upgrade boilerplate

* PoC v2 Fixes/TA Agent Whitelist (gonka-ai#673)

Full PoC V2 activation with model consolidation and access controls.

- PoC V2 fully enabled (tracking mode from v0.2.8 -> full enforcement)
- Network consolidated to single model: `Qwen/Qwen3-235B-A22B-Instruct-2507-FP8`
- Transfer Agent whitelist for request gating
- Guardian tiebreaker for undecided PoC V2 votes
- 24 suspicious participants removed from allowlist

**PoC V2 Activation**
- `PocV2Enabled=true`, `ConfirmationPocV2Enabled=true`
- `WeightScaleFactor=0.262`, `InferenceValidationCutoff=2`, `PocValidationDuration=480`
- All nodes' `POC_SLOT` allocations reset (both `ActiveParticipants` and `EpochGroupData`)
- First V2 epoch runs in grace mode, full enforcement begins the following epoch

**Guardian Tiebreaker**
- When neither valid nor invalid votes reach majority, guardians can break the tie
- Requires: no majority exists, guardians enabled, at least one guardian voted, all voting guardians agree

**Transfer Agent Whitelist**
- New `TransferAgentAccessParams.AllowedTransferAddresses` in params
- Validation in `StartInference` and `FinishInference` messages
- Empty whitelist = all TAs allowed; non-empty = only listed TAs

**Model Consolidation**
- All governance models except `Qwen/Qwen3-235B-A22B-Instruct-2507-FP8` deleted during migration

**Suspicious Participant Removal**
- 24 addresses removed from allowlist (completed POC generation but did not vote at validation)

**Enforced Model Auto-Switch**
- Auto-switches nodes to qwen235B with `--tensor-parallel-size 4 --max-model-len 240000`
- Config enforcement overwrites node model config on load
- Runtime verification queries vLLM `/v1/models` endpoint, triggers redeploy on mismatch
- Disabled via `ENFORCED_MODEL_ID=none`

**Transfer Agent Whitelist**
- Early enforcement in `/chat/completion` before expensive operations
- Cache synced from chain on every new block for O(1) lookups

**[gonka-ai#674](gonka-ai#674) Missed inferences fix**
- Don't punish for missed inferences of non-preserved nodes during PoC
- Don't punish if participant doesn't support the model

**[gonka-ai#678](gonka-ai#678) CPoC downtime penalty redistribution**
- Lower confirmation reward penalty transferred to community pool instead of being lost

**Inference expiry during PoC/CPoC**
- New `InferenceExpiryContext` tracks latest PoC or CPoC range
- Inferences started during PoC/CPoC not punished for expiry

**Bitcoin rewards weight calculation**
- Full weights used for denominator (prevents redistribution of invalidated participants' shares)
- CPoC reductions and invalidated shares go to governance pool

* feat(poc): add validation sampling to reduce complexity from O(N²) to O(N*N_SLOTS)

- add GetSlots algorithm for deterministic weighted random sampling
- store PoCValidationSnapshot on-chain at validation phase start
- filter DAPI validation to only assigned participants
- count slots instead of weight for consensus (weight encoded in slot distribution)
- add ValidationSlots parameter to PocParams (0 = disabled, fallback to O(N²))
- support both regular PoC and confirmation PoC

* fix(poc): harden validation sampling edge cases and add testermint params

- skip negative/zero weights in GetSlots to prevent undefined behavior
- return nil snapshot when not found in query handler
- log fallback to O(N^2) when snapshot missing on chain
- fallback instead of return on DAPI snapshot query error
- add validation_slots and stat_test to testermint AppExport
- add comprehensive unit tests for slots edge cases

* fix(poc): fix concurrent artifact read race causing data corruption

- Use ReadAt instead of Seek+ReadFull for thread-safe concurrent reads
- Add signed response with signer_address, timestamp, signature fields
- Report participants as invalid when validation retries exhausted

* set slots amount

* Fix

* Fix: key

* fix: remove duplicate reportInvalidParticipant function after rebase

* Rever main behaviour

* Review fixes

* clean up

* Optimization

* Better esimtations

* Update security model

* normalize POC

* Lost snapshots

* normalize POC

* feat(poc): add poc_normalization_enabled parameter to control time-based weight normalization

* proper decimal

* Comment

* Update pulsar.go files

* Fix governance test

* Minor review fixes:
1. Log result of participant weight calculation
2. Update comments for params
3. If we find an incomplete PoCValidationSnapshot, treat it as not found (for the `ValidateAll` query)

* make broker test more robust

---------

Co-authored-by: johnlong <john.long@productscience.ai>
Co-authored-by: dima <dima.orekhov@productscience.ai>

* gonka-ai#634 follow-up: pass in response writer into the http.MaxBytesReader (gonka-ai#727)

* pass in the writer

* fix post_chat_handler_test.go

* Update upgrade description to include PoC Weight Normalization

* gonka-ai#727 description

* Distribute bounty (gonka-ai#733)

* Add proposed bounties to README (gonka-ai#732)

* Add proposed bounties to README

Added proposed bounties section with details on rewards for various PRs and issues.

Signed-off-by: mtvnastya <mtvnastya@gmail.com>

* Refine proposed bounties formatting in README.md

Updated the proposed bounties section for clarity and consistency.

Signed-off-by: mtvnastya <mtvnastya@gmail.com>

---------

Signed-off-by: mtvnastya <mtvnastya@gmail.com>
Co-authored-by: Gleb Morgachev <morgachev.g@gmail.com>

* POC Params (gonka-ai#734)

* POC Params

* Longer validation

* Upgrade v0.2.10 finalize readme (gonka-ai#735)


---------

Co-authored-by: Gleb Morgachev <morgachev.g@gmail.com>

* Review fixes (gonka-ai#738)

* ignore nonces without distribution

* Use snapshots

* 0.2.10 review fixes: msg transfer (gonka-ai#743)

* Fix missing error handling

* add amount comment

* Update inference-chain/x/streamvesting/keeper/msg_transfer_with_vesting.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

---------

Signed-off-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Fix PoC and CPoC intersection bug (gonka-ai#752)

Co-authored-by: Gleb Morgachev <morgachev.g@gmail.com>

* 0.2.10 merge w 0.2.9-post3 hotfix (gonka-ai#762)

* Fix: v0.2.9-post3 (gonka-ai#748)

* Fix: intersection

* use previous active participant set

* version

* post merge codegen

* fix pulsar files

* remove epoch 170 handling

---------

Co-authored-by: Gleb Morgachev <morgachev.g@gmail.com>

* bounty for previous upgrade pr reviews (gonka-ai#745)

* Update README with new PR entries and reviews

Added new entries for PR gonka-ai#641, PR gonka-ai#622, and PR gonka-ai#688, along with a review section for previous upgrades.

Signed-off-by: mtvnastya <mtvnastya@gmail.com>

* Add bounty payments

Signed-off-by: mtvnastya <mtvnastya@gmail.com>

* Fix formatting issue in upgrade v0.2.10

Signed-off-by: mtvnastya <mtvnastya@gmail.com>

* Add new address for review of 0.2.8

Signed-off-by: mtvnastya <mtvnastya@gmail.com>

---------

Signed-off-by: mtvnastya <mtvnastya@gmail.com>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>

* Remove epoch 170 edge special handling

* Tools & Phases (gonka-ai#767)

* Enable tools

* feat(upgrade): add grace epoch for relaxed punishment during upgrade

* fix(poc): align API artifact acceptance with chain exchange windows

Deprecate poc_exchange_duration (set to 0 in v0.2.10 upgrade). API now
accepts artifacts until poc_generation_end using IsPoCExchangeWindow
and IsInBatchSubmissionWindow checks instead of relying on phase alone.

* desciption

* Versions

* Versions

* check validationParams != nil

* use DefaultValidationParams when not found

---------

Co-authored-by: dima <dima.orekhov@productscience.ai>

* # Adjust CPoC ratio and weight scale factor (gonka-ai#768)

* Adjust multiplicator

* POC

* Add PoC vector verification on `api` side (gonka-ai#769)

* fix(poc): reject NaN and Infinity in FP16 vectors

---------

Signed-off-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Signed-off-by: mtvnastya <mtvnastya@gmail.com>
Co-authored-by: x0152 <45021974+x0152@users.noreply.github.com>
Co-authored-by: DimaOrekhovPS <dima.orekhov@productscience.ai>
Co-authored-by: AlexeySamosadov <37549796+AlexeySamosadov@users.noreply.github.com>
Co-authored-by: Alexey Samosadov <alexey@192.168.1.113>
Co-authored-by: Fedor Ignatov <ignatov.fedor@gmail.com>
Co-authored-by: Alexander Kuprin <ak@neonavigation.com>
Co-authored-by: Alexey Samosadov <alexey@192.168.1.100>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Gleb Morgachev <morgachev.g@gmail.com>
Co-authored-by: AlexeySamosadov <alexey@samosadov.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: GLiberman <gabriel@liberman.net>
Co-authored-by: 0xMayoor <0xmayor@quartiers.io>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Alexey Samosadov <alexey@MacBook-Air-Alexey.local>
Co-authored-by: mtvnastya <mtvnastya@gmail.com>
* disable fastnode

* bump container
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.

4 participants