chore: merge main into feat/dedicated-sync (splice 0.7.5) - #22
Open
sadiq1971 wants to merge 2 commits into
Open
Conversation
* Prevent too many alerts from Cloud NAT (#6478)
[static]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* bump ACS commitments checkpoint delay from 20 to 40 minutes to reduce noise on CILR (#6482)
[static]
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Remove cometbft preflights from non devnet (#6480)
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Log last exception when opening circuit breaker (#6486)
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* add details about CI and automatic upgrade tests to the instructions on bumpting Canton (#6488)
[static]
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* bump canton to 3.5.10-snapshot.20260721.19104.0.vaba417c1 (#6487)
[ci]
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Bump nix (#6102)
* [ci] bump nix alone
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* [ci] fix all issues
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* [ci] add package-lock
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* [ci] chart timeout expanded
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* [ci] update expected files
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
---------
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* Double timeout for `/api/sv/v0/onboard/sv/sequencer` (#6494)
On CILR we now need more than 5 minutes for `com.digitalasset.canton.sequencer.admin.v30.SequencerAdministrationService/OnboardingStateV2`.
The timing matches the switch to CantonBFT sequencers. Not fully clear how this can matter (CantonBFT only adds a ~constant amount of stuff to these, see https://github.com/DACH-NY/canton/blob/main/community/synchronizer/src/main/protobuf/com/digitalasset/canton/sequencer/admin/v30/sequencer_bft_additional_snapshot_info.proto).
I'm choosing to believe that we'll revisit the custom timeouts in https://github.com/DACH-NY/canton-network-internal/issues/2125 some day so not bothering with deeper analysis.
* Add ACS size panel from snapshot metric (#6493)
Follow-up to #6453: the ACS growth alert now fires on splice_history_acs_snapshots_snapshot_size, but no dashboard showed it.
Also fixes the dashboard's template variables, which still queried the removed splice_store_acs_size metric.
[static]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Prevent NAT alerts from triggering on temporary spikes (#6504)
[static]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* fix: narrow down alerts to just the right GW (#6508)
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* Upgrade to Canton 3.5.10-snapshot.20260722.19106.0.v8bb2addb (#6507)
[ci]
Contains some cantonbft fixes (not yet enough for the next lsu).
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Specify duration in seconds in GCP alert (#6513)
To make GCP happy [static]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Parse p2p url as uri instead of string (#6506)
Should avoid people forgetting an https:// in front.
fixes #6492
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Monitor BFT in catchup test (#6518)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Disable compat test for unvetting integration test (#6484)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Switch daml compat tests to pv 35 (#6521)
And along the way fix some buggy scalatest clue strings.
fixes https://github.com/DACH-NY/cn-test-failures/issues/9354
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* cantonbft - use the sequencer id for reconciling peers (#6510)
* cantonbft - Adapt fork changes to include sequencer id in configured peers
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Grafana: fix acknowledgements dashboard for CILR (#6519)
Confirmed fix by clicking in the UI. Apparently this was broken ever since we hit serial / migration ID 10...
[static]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* feat: ensure pure gha can build images (#6525)
* feat: ensure pure gha can build images
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* [ci] bump
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
---------
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* Add input validation for getSettlementFactory to have bounded DB operation cost (#6520)
[ci]
Signed-off-by: pasindutennage-da <pasindu.tennage@digitalasset.com>
Signed-off-by: Pasindu Tennage <pasindu.tennage@digitalasset.com>
* Log ignore bft warnings (#6531)
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Remove catchup monitoring from splice (#6532)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Increase cometbft propose timeout to 2s from 1s (#6527)
This should avoid most of timeouts and starting new rounds which is quite a heavy operation with the downside of possible larger latency when some nodes are slow.
It will have a bigger impact if a node is down but we can handle that at an operational level.
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Fix grafana muteTimeIntervals for interval across different days (#6529)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Remove double splitwell test setup (#6534)
[ci]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Extend LSU cancellation test to mimic actual cancellations (#6503)
* Extend LSU cancellation test to mimic actual cancellations
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Lower cantonbft empty block timeout to 500ms (#6533)
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Reduce cometbft ttl duration to 60s (#6537)
It doesn't make sense to add something to ablock after 30s actually
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Remove retries for node initialized (#6536)
We already retry everywhere where we call that
This was interefering with the check for active synchronzier which is used in a lot of places and making things timeout because we had those implicit retries
In most places we had nested retries in this case
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Bump Canton to 3.5.10 (#6541)
s.a. #6140
[ci]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Fix SV UI crash when CometBFT is not configured (#6543)
Fixes #6540
Verified with a new vitest that reproduces the paused-pending state via onlineManager.setOnline(false); it fails on the old code with the exact production error.
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* [static] clear release notes for 0.6.14 (#6545)
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Disable BFT sequencer connections for SVs in SvOnboardingViaNonFoundingSvIntegrationTest (#6538)
[ci]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* bump VERSION and LATEST_RELEASE after releasing 0.6.14 (#6548)
[ci]
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Pulumi: Default to `replaceAll` for replacing placeholder strings in Grafana definitions (#6549)
Avoids buggy messages such as `Average verdict ingestion batch size is above $VERDICT_INGESTION_BATCH_SIZE_THRESHOLD for namespace sv-9.`
[static]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Disable credentials check for public docker repo in skopeo (#6552)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* Move LSU cancellation endpoint behind operator auth (#6555)
No need for admin auth as you can schedule a LSU without it so it doesn't really make sense
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Remove scan transactions endpoint (#6561)
* Remove scan transactions endpoint
Already deprecated, we removed /activities already, metrics show
basically no usage (< 1 request per day) and next release is 0.7.0 so
perfect time for removing a deprecated endpoint.
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* fix rate limits
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
---------
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Add accept-language in pekko ignore-illegal-header (#6566)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Add a script which constructs a fake single package for speeding up dev cycles (#6523)
---------
Signed-off-by: Cale Gibbard <cale.gibbard@obsidian.systems>
* Remove CC txlog parsing from Scan (#6551)
---------
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Disable transfer command support by default (#6567)
fixes #6553
[ci]
---------
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Update sbt to 1.12.14. (#6474)
Prior to v1.11.1, sbt had a memory leak (https://github.com/sbt/sbt/issues/8142) in its `update` task that caused memory usage to grow linearly with the number of `update`s performed. This affects regular development as `update` is called as part of the `compile` task dependency graph.
After upgrading to a version that includes the fix (https://github.com/coursier/sbt-coursier/pull/563, https://github.com/coursier/sbt-coursier/pull/564), I've found development with sbt, especially with long-running sbt shell sessions, to be a more pleasant experience; there's less sluggishness and a lot fewer warnings that say "X seconds of the last 10 seconds were spent in garbage collection."
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Specify set of valid response content types (#6535)
* Specify set of valid response content types.
Fixes #6483.
This updates `HttpClient.createHttpFn` to consider a response invalid if its content type is not `application/json`, `application/octet-stream`, or `text/plain`. This results in `httpClientWithErrors` calling `getApiErrorFromResponse`, which produces an `HttpCommandException` and includes the raw response body in its error message.
These three content types are the only ones used across all the OpenAPI specs in the repo. `text-plain` is used by [`devNetOnboardValidatorPrepare`](https://github.com/canton-network/splice/blob/main/apps/sv/src/main/openapi/sv-internal.yaml#L506-L508), and `application/octet-stream` is used by [`bulkStorageDownload`](https://github.com/canton-network/splice/blob/main/apps/scan/src/main/openapi/scan-stream-server.yaml#L46-L50).
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Ensure responses with `ContentTypes.NoContentType` are considered valid.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Run scalafmt.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
---------
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* update our Canton fork to latest release-line-3.5 (#6331)
* Undo our changes
* Bump Canton commit
* Reapply our clean changes
* add traffic-enforcement
* traffic-enforcement-component deps
* get traffic-enforcement-api from maven
* don't build ledger-api-core
* this is digital-asset/canton@2fc931e
* account for cryptoMetrics
* renamed synchronizerId to psid in DACH-NY/canton#33295
* do not compile UseLedgerApiTestTool
* match canton library version to fork version
* Alpha removed in DACH-NY/canton#33332
* setup name now collides
* refer to #6544 for further deletions
* replace more forked source libraries with binaries
- magnolify-addon
- daml-jwt
- daml-tls
* prefer forked source in a couple un-upstreamed cases
* use blake2b binary
---------
Assisted-by: Copilot:claude-4.6-opus
Assisted-by: Copilot:gpt-5.3-codex
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* remove unused Canton sbt subprojects (#6569)
* remove ledger-api-core
* remove daml-tls
* remove daml-jwt
* remove Blake2b
* remove magnolify
---------
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* Support configuring API request logging per app-type. (#6560)
Fixes #6337
This adds a new `cantonApiRequestLogLevel` config that controls the API request log level of the Canton apps, while the exiting `apiRequestLogLevel` config controls the API request log level of the Splice apps.
For backward compatibility, the Canton apps will fall back to using `apiRequestLogLevel` if `cantonApiRequestLogLevel` is not set.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* helm, info, status: Update grpc_health (#6565)
- Add missing mandatory header "TE: trailers"
- Add option --connect-only to grpc_health (useful in absence of healthcheck endpoint)
Signed-off-by: Stanislav German-Evtushenko <ginermail@gmail.com>
* Update brace-expansion (#6574)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* Update react-router (#6575)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* [static] Fix curl retry piped into jq in skip_on_static and daml_compat_test (#6580)
Failed-attempt bodies from --fail-with-body corrupt the pipe into jq
(parse error, then EPIPE storm). Write to a file instead: curl resets
an -o output file between retries.
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* Temporarily fix static checks under external PRs (#6582)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* Implement new RadioSelector design (issue #2655) (#6397)
Signed-off-by: Tim Pelzer <tim.pelzer@finoa.io>
* Support different sets of `additionalJvmOptions` for the sequencer and mediator (#6522)
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* TBAR: Guard meta row insertion on traffic summaries (#6579)
Signed-off-by: Divam <dfordivam@gmail.com>
* helm, info, status: Check CantonBFT reachability (#6589)
* helm, info, status: Add separate function to fetch Scan URLs
Signed-off-by: Stanislav German-Evtushenko <ginermail@gmail.com>
* Update canton bft dashboards with latest 3.5 (#6595)
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* PostgreSQL 18 release notes (#6588)
---------
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* [ci] Ignore background warnings in actAs-dso log assertion (#6593)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Bump timeout on concurrent taps in wallet batch test (#6592)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* SV UI: CIP-104 Support UpdateFeatureAppRight Vote (#6441)
Signed-off-by: JYC11 <jaeyoon.c@gmail.com>
Signed-off-by: Divam <dfordivam@gmail.com>
Co-authored-by: Divam <dfordivam@gmail.com>
* [ci] Retry event history sanity check to avoid scan ingestion race (#6591)
* [static] Retry event history sanity check to avoid scan ingestion race
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [static] Explain the ingestion-cap race in the event history retry comment
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
---------
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* Implement governance form field styling (Fixes #2656, #2657, #2659) (#6407)
Signed-off-by: Lyutskan Lyutskanov <lyutskan.lyutskanov@finoa.io>
Signed-off-by: Tim Pelzer <tim.pelzer@finoa.io>
Co-authored-by: Tim Pelzer <tim.pelzer@finoa.io>
* Document staging branches (#6598)
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* replace Canton source submodules with binaries where matching (#6571)
* remove base-errors and google-common-protos-scala
* remove empty pekko-fork
* use binary util-external
* fix util-external call in HttpScanAppClient
* remove adjustable-clock
* remove upstream-removed ledger-common
* remove kms-driver-api
* remove wartremover-annotations
* remove scalatest-addon
---------
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* hard-fork ApiCodecCompressed & tests to separate library (#6576)
* move ApiCodecCompressed to hard fork library lf-value-json
* restore codec tests from DACH-NY/canton#27917
* remove tests that need JsonEncodingTest.dar
- dealing with LF Record
- decode a JSON array of the right length
- fail to decode if missing fields
- fail to decode if extra fields
- dealing with LF Variant
- decode Foo/Baz from JSON
- fail decoding Foo/Qux from JSON if 'value' field is missing
- decode Foo/Qux (empty value) from JSON
- dealing with Contract Key
- decode type Key = Party from JSON
- decode type Key = (Party, Int) from JSON
- decode type Key = (Party, (Int, Foo, BazRecord)) from JSON
* proper dependencies for lf-value-json
* use lf-value-json in apps-common
---------
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* [ci] Disable update history sanity check in SvOnboardingViaNonFoundingSvIntegrationTest (#6606)
sv1 is stopped mid-test; the plugin accesses sv1Scan.automation after sv1's
participant is down, throwing 'Node doesn't have any app state'. This also
prevents proper port release, causing three subsequent tests to fail with
'Could not create Prometheus HTTP server'.
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Close all scan resources even when one close fails; include legacy nodes and rewards store (#6605)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Release netty buffers on zstd compression failures (#6603)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Delete all toxiproxy proxies even when one delete fails (#6604)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* replace storage.underlying with storage in tests for DbAppActivityRecordStoreTest and DbScanAppRewardsStoreTest (#6564)
Signed-off-by: JYC11 <jaeyoon.c@gmail.com>
Co-authored-by: Divam <681060+dfordivam@users.noreply.github.com>
* helm, info, status: Updates and fixes (#6609)
* helm, info, status: Print position and exit code on error
Signed-off-by: Stanislav German-Evtushenko <ginermail@gmail.com>
* helm, info, status: Ignore CantonBFT node when unable to fetch URL
Before:
- If the URL for a single CantonBFT node can't be fetched no results for
all CantonBFT nodes are generated
After:
- If the URL for a single CantonBFT node can't be fetched the result
only for this node is missing
Signed-off-by: Stanislav German-Evtushenko <ginermail@gmail.com>
---------
Signed-off-by: Stanislav German-Evtushenko <ginermail@gmail.com>
* SV UI strings adjustment (#6243)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* Upgrade Canton to 3.5.11-snapshot.20260730.19128.0.ve4f54d89 (#6613)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Change default cantonbft config to exponential blacklisting (#6612)
To recover more quickly from nodes that are down. Not gonna do much
for the cases where someone times out every X epochs but still a
better default.
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* fix bft scan connection init leaks (#6617)
* [static] Close scan connections when BFT scan connection init fails
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Format
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
---------
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* Clear out upcoming release notes (#6620)
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Upgrade Canton to 3.5.11 (#6619)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* [ci] Widen rate limit window in ScanIntegrationTest (#6624)
maxAccepted was the exact theoretical ceiling with no slack, so any timing
jitter that stretches the 5s emission window lets one more refill batch
through (seen accepting 31).
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Pin as_of_round in ScanTimeBasedIntegrationTest holdings summary (#6622)
The at_or_before query ran after advanceTime, so it resolved a different
earliest open mining round than the exact query and the holding fees
differed by one round.
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Close channel and snapshot stream on synchronous failures in Seq… (#6618)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* Bump versions after 0.7.0 release (#6625)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* [ci] Close additionalLegacy synchronizer nodes and isolate node closes (#6626)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* [ci] Make wallet service closes failure-isolated and clean up on part… (#6627)
* [ci] Make wallet service closes failure-isolated and clean up on partial construction
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* Fix at threshold decoding in old proposals (#6632)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* add per ip rate limits (#6631)
Fixes #6599
This PR adds:
per IP rate limits
validation for the schema
example usage:
perIpLimits:
maxTokens: 120
tokensPerFill: 120
fillInterval: 60s
overrides:
test:
ips:
- 192.68.78.50
maxTokens: 220
tokensPerFill: 220
fillInterval: 60s
Note: the change is backwards-compatible.
* SV UI Redesign Look & Feel: Component: Layout (#6383)
Signed-off-by: Puneet Bharti <puneet.bharti@finoa.io>
* [ci] Recover accepted DUPLICATE_COMMAND in SpliceLedgerConnection ded… (#6601)
Signed-off-by: Raymond Roestenburg <raymond.roestenburg@digitalasset.com>
* Update to latest version of cantonbft dashboards (#6651)
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Add timeout to the grpcClients in splice (#6597)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Support splice helm chart migration to Postgres 18 image (#6637)
---------
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
Co-authored-by: moritzkiefer-da <45630097+moritzkiefer-da@users.noreply.github.com>
* SV UI: add Submitted By column to governance tables (#3691) (#6460)
Signed-off-by: Puneet Bharti <puneet.bharti@finoa.io>
* Fix runbooks' deployments (#6662)
* fix validator runbook
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* fix sv runbook
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* doc parameters
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* update expected [static]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
---------
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Fix validator runbook using a default postgres host (#6664)
[static]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Fix backup & restore on helmless postgres (#6668)
---------
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Fix uid of Sequencer Traffic dashboard (#6666)
[static]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Fix cilr pod-reaper getting stuck due to pull image (#6672)
[ci]
Signed-off-by: Pasindu Tennage <pasindu.tennage@digitalasset.com>
Signed-off-by: pasindutennage-da <pasindu.tennage@digitalasset.com>
* Add alert for repeated `/api/scan/v0/sv-bft-sequencers` fails (#6675)
Part of https://github.com/DACH-NY/cn-test-failures/issues/9485 ; next step will be to demote the log omitted there to info (or at least avoid it being warn already on the first fail).
[static]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Increase default cantonbft segment length (#6671)
* Increase default cantonbft segment length
---------
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Demote `Failed to read bft sequencers list from scan` to INFO (#6677)
Fixes https://github.com/DACH-NY/cn-test-failures/issues/9485
Alerting now covered via https://github.com/canton-network/splice/pull/6675
I contemplated making the logging smarter (only warn if stays failed for N minutes), but somehow I'm not convinced that this is worth the effort and added complexity.
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* localnet: make TARGET_TRAFFIC_THROUGHPUT configurable (#6676)
Signed-off-by: Matteo Limberto <matteo.limberto@digitalasset.com>
* Update canton to 3.5.12-snapshot.20260804.19139.0.vbd8b06e0 (#6684)
[ci]
Signed-off-by: pasindutennage-da <pasindu.tennage@digitalasset.com>
Signed-off-by: Pasindu Tennage <pasindu.tennage@digitalasset.com>
* Support external sharing configuration (#6353)
Signed-off-by: JYC11 <jaeyoon.c@gmail.com>
Signed-off-by: Jaeyoon Cho <jaeyoon.c@gmail.com>
Co-authored-by: Simon Meier <simon@digitalasset.com>
Co-authored-by: Divam <681060+dfordivam@users.noreply.github.com>
* [ci] bump GHA runner version to the latest (auto-generated) (#6648)
Signed-off-by: DA Automation <splice-maintainers@digitalasset.com>
Co-authored-by: DA Automation <splice-maintainers@digitalasset.com>
* Bump timeout in archive expired VoteRequest contracts test (#6692)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* remove migration ID from non-SV participant names (#5991)
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Ingest ProcessRewardsV2 in ScanRewardsReferenceStore (#6691)
Signed-off-by: Divam <dfordivam@gmail.com>
* Add bad counterparties auto-ignore mechanism in Ans and Transfer pre-approval expiry triggers (#6680)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Fix cncluster psql for participants (#6695)
Tested on CILR that it works for sv participant, sequencer and sv-app
and for validator1 participant.
Fixes #6693
[static]
Signed-off-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Prevent page_token=123 false alert (#6697)
[static]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Ignore expired preapprovals in AcceptTransferPreapprovalProposalTrigger (#6673)
[ci]
fixes #6610
Signed-off-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org
Signed-off-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
* Show diff of `dars.lock` if it's out of date (#6657)
* Show diff of `dars.lock` if it's out of date.
Fixes #5899
This updates `DarLockChecker.scala` to shell out to `diff` to get the difference between the current lock file and its expected contents, and includes the output in the error message.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Change `garbage collection` to `GC`.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
---------
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Unified URLs (#6455)
Signed-off-by: Tim Pelzer <tim.pelzer@finoa.io>
* Disable circuit breakers for all sv4 apps in LSU test (#6704)
fixes DACH-NY/cn-test-failures#9487
Previous fix (#5587) only covered the sv app; DACH-NY/cn-test-failures#9487 shows the same trip (sequencer backpressure during sv4 catchup) from the sv4 validator app
[ci]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* use binary slick-fork instead of forked source (#6687)
* move asUpdateReturning to a syntax extension
---------
Assisted-by: Copilot:claude-5-opus
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* Do not write metadata file in PeriodicTopologySnapshotTrigger (#6706)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Bump the development-dependencies group across 1 directory with 5 updates (#6475)
Bumps the development-dependencies group with 4 updates in the /load-tester directory: [@eslint/eslintrc](https://github.com/eslint/eslintrc), [@types/k6](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/k6), [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [prettier](https://github.com/prettier/prettier).
Updates `@eslint/eslintrc` from 3.3.5 to 3.3.6
- [Release notes](https://github.com/eslint/eslintrc/releases)
- [Changelog](https://github.com/eslint/eslintrc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslintrc/compare/eslintrc-v3.3.5...eslintrc-v3.3.6)
Updates `@types/k6` from 2.0.0 to 2.0.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/k6)
Updates `@typescript-eslint/eslint-plugin` from 8.61.1 to 8.65.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.65.0/packages/eslint-plugin)
Updates `@typescript-eslint/parser` from 8.61.1 to 8.66.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.66.0/packages/parser)
Updates `prettier` from 3.8.4 to 3.9.6
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.8.4...3.9.6)
---
updated-dependencies:
- dependency-name: "@eslint/eslintrc"
dependency-version: 3.3.6
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@types/k6"
dependency-version: 2.0.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@typescript-eslint/eslint-plugin"
dependency-version: 8.64.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: "@typescript-eslint/parser"
dependency-version: 8.65.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: prettier
dependency-version: 3.9.5
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Bump @types/node from 25.9.4 to 26.1.0 in /gha-scripts (#6683)
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 25.9.4 to 26.1.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 26.1.0
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>
* Bump bignumber.js (#6348)
Bumps the production-dependencies group with 1 update in the /load-tester directory: [bignumber.js](https://github.com/MikeMcl/bignumber.js).
Updates `bignumber.js` from 11.1.4 to 11.1.5
- [Release notes](https://github.com/MikeMcl/bignumber.js/releases)
- [Changelog](https://github.com/MikeMcl/bignumber.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/MikeMcl/bignumber.js/compare/v11.1.4...v11.1.5)
---
updated-dependencies:
- dependency-name: bignumber.js
dependency-version: 11.1.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* SV UI: warn when disabled config fields change in proposals (#5650) (#6471)
Signed-off-by: Puneet Bharti <puneet.bharti@finoa.io>
* [ci] Bump the development-dependencies group across 1 directory with 8 updates (#6667)
* [ci] Bump the development-dependencies group across 1 directory with 8 updates
Bumps the development-dependencies group with 7 updates in the /cluster/pulumi directory:
| Package | From | To |
| --- | --- | --- |
| [@eslint/eslintrc](https://github.com/eslint/eslintrc) | `3.3.5` | `3.3.6` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.61.1` | `8.65.0` |
| [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) | `9.39.4` | `9.39.5` |
| [minimatch](https://github.com/isaacs/minimatch) | `10.2.5` | `10.2.6` |
| [prettier](https://github.com/prettier/prettier) | `3.8.4` | `3.9.6` |
| [ts-jest](https://github.com/kulshekhar/ts-jest) | `29.4.11` | `29.4.12` |
| [@types/lodash](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/lodash) | `4.17.24` | `4.17.25` |
Updates `@eslint/eslintrc` from 3.3.5 to 3.3.6
- [Release notes](https://github.com/eslint/eslintrc/releases)
- [Changelog](https://github.com/eslint/eslintrc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslintrc/compare/eslintrc-v3.3.5...eslintrc-v3.3.6)
Updates `@typescript-eslint/eslint-plugin` from 8.61.1 to 8.65.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.65.0/packages/eslint-plugin)
Updates `@typescript-eslint/parser` from 8.61.1 to 8.66.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.66.0/packages/parser)
Updates `@eslint/js` from 9.39.4 to 9.39.5
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/commits/v9.39.5/packages/js)
Updates `minimatch` from 10.2.5 to 10.2.6
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v10.2.5...v10.2.6)
Updates `prettier` from 3.8.4 to 3.9.6
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/3.8.4...3.9.6)
Updates `ts-jest` from 29.4.11 to 29.4.12
- [Release notes](https://github.com/kulshekhar/ts-jest/releases)
- [Changelog](https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/kulshekhar/ts-jest/compare/v29.4.11...v29.4.12)
Updates `@types/lodash` from 4.17.24 to 4.17.25
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/lodash)
---
updated-dependencies:
- dependency-name: "@eslint/eslintrc"
dependency-version: 3.3.6
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@eslint/js"
dependency-version: 9.39.5
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@types/lodash"
dependency-version: 4.17.25
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@typescript-eslint/eslint-plugin"
dependency-version: 8.65.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: "@typescript-eslint/parser"
dependency-version: 8.66.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: minimatch
dependency-version: 10.2.6
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: prettier
dependency-version: 3.9.6
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: ts-jest
dependency-version: 29.4.12
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
* fix: fix prettier issues
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* [ci] bump
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* fix: add prettier changes
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: krzysztofczyz-da <krzysztof.czyz@digitalasset.com>
* Close stream in TemplateJsonDecoder (#6705)
[ci]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Upgrade Canton to 3.5.12 (#6712)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Clear Release Notes (#6721)
[static]
Signed-off-by: Pasindu Tennage <pasindu.tennage@digitalasset.com>
Signed-off-by: pasindutennage-da <pasindu.tennage@digitalasset.com>
* implement split SV deployment migration procedure (#6655)
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Revert "[ci] Bump the development-dependencies group across 1 directory with 8 updates" (#6726)
This reverts commit 48911a80c33f10f96e25e156597ed01e393a1abc.
---------
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* fix typo in ValidatorReonboardingIntegrationTest.scala (#5535)
Signed-off-by: Richard Kapolnai <53859003+richardkapolnai-da@users.noreply.github.com>
Co-authored-by: Martin Florian <martin.florian@digitalasset.com>
* Bump versions after 0.7.1 release (#6729)
[ci]
Signed-off-by: Pasindu Tennage <pasindu.tennage@digitalasset.com>
Signed-off-by: pasindutennage-da <pasindu.tennage@digitalasset.com>
* SV UI: remove "proposal reason" from update feature app weight proposal form (#6689)
---------
Signed-off-by: JYC11 <jaeyoon.c@gmail.com>
* Upgrade Canton to 3.5.13-snapshot.20260809.19149.0.v1b50fc03 (#6735)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Reconcile setBalanceRequestSubmissionWindowSize (#6728)
Main part of #4715
Once merged, I'll make sure to alert SVs about the upcoming change right away.
[ci]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Fix lsu dashboard participant status panel (#6736)
also update unresponsive parties to show all in the tooltip
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Parametrize chaos mesh schedule (#6737)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Update bft dashboard to latest version (#6739)
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Enable istio rate limiting metrics (#6614)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Allow voting after effectivity date. (#6646)
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Bump aws_version (#6740)
Signed-off-by: Robert Autenrieth <robert.autenrieth@digitalasset.com>
* Add advisory lock to `SqlIndexInitializationTrigger` (#6681)
* Add advisory lock to `SqlIndexInitializationTrigger`.
Fixes #4738
This adds an advisory lock around the index DDL statements in `SqlIndexInitializationTrigger`. When a trigger fails to acquire the lock, the task will be retried.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* use consistent 'should' style in DbScanAppRewardsStoreTest (#6146)
Signed-off-by: JYC11 <jaeyoon.c@gmail.com>
* fix sv network banner to always show (#6087)
Signed-off-by: Jaeyoon Cho <jaeyoon.cho@obsidian.systems>
Signed-off-by: JYC11 <jaeyoon.c@gmail.com>
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
Co-authored-by: Paweł Perek <pawel.perek@digitalasset.com>
* SV UI: More descriptive names for Reward Config (#6578)
Signed-off-by: Tim Emiola <adetokunbo@emio.la>
Signed-off-by: JYC11 <jaeyoon.c@gmail.com>
Signed-off-by: Jaeyoon Cho <jaeyoon.c@gmail.com>
Co-authored-by: Tim Emiola <adetokunbo@emio.la>
Co-authored-by: Divam <681060+dfordivam@users.noreply.github.com>
Co-authored-by: Simon Meier <simon@digitalasset.com>
* Fix GCP log-based upgrade alerts (#6752)
Apparently they changed something and the old query doesn't give signal anymore.
I picked the new query based on looking at logs... and looking at historic data it looks right and not too spammy.
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Upgrade Canton to 3.5.13-snapshot.20260811.19159.0.va77f0cc3 (#6753)
Has the fixed metrics.
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Fix rewardWeightBps specified with '_' breaking js_yaml >= 4.2 (#6749)
---------
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* adjust_perf_test_benchmarks (#6761)
Signed-off-by: Jagath Weerasinghe <jagath.weerasinghe@digitalasset.com>
* Allow arbitrary labels in GKE node config (#6758)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* Ignore stream restart warnings on shutdown (#6760)
[ci]
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Fix more LOCAL_VERDICT_INACTIVE_CONTRACTS in TestTokenV2SettlementIntegrationTest (#6759)
fixes https://github.com/DACH-NY/cn-test-failures/issues/9517
same logic as https://github.com/canton-network/splice/pull/6432
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Auto-ignore party when no amulet version is vetted (#6747)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Reapply "[ci] Bump the development-dependencies group across 1 directory with 8 updates" (#6757)
This reverts commit 905ead3cf829334795e830a2b7a00d7faa4099ea.
---------
Signed-off-by: Oriol Muñoz <oriol.munoz@digitalasset.com>
* Bump canton version (#6765)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Auto-enable session signing keys on KMS participants (#6778)
Part of #5135
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Bump canton version to 3.5.13 (#6781)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Clear upcoming release notes (#6779)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Upload protobuf encoding of snapshot/updates to bulk storage. (#6602)
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Bump versions after release (#6783)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* added a new data stream and code to create datatransfer jobs to load prod tables (#6542)
* added a new data stream and code to create datatransfer jobs to load prod tables
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* Added code to stop and start datastreams from config and intergrated PR comments
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* added index file changes
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* Addressed PR comments and refactured the code
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* made extra edits to bigquery.ts
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* added new boundary condition per PR comments
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* restored index and envr.envrs file
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* removed the watermark update criteria as it would always fail being less than the crrent value
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* Addresed PR comments
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* formatting
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* formatting and deleting extra coments
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* Apply suggestions from code review
Co-authored-by: Stephen Compall <stephen.compall@digitalasset.com>
Signed-off-by: kajalshah-da <kajal.shah@digitalasset.com>
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* minor edits
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* minor edits- removed IAM function
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* Merged with main and fixed all diffs[ci]
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* added partition in publication per issue #6730
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* added partition in publication per issue #6730 [ci]
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
* update expected
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
---------
Signed-off-by: Kajal Shah <kajal.shah@digitalasset.com>
Signed-off-by: kajalshah-da <kajal.shah@digitalasset.com>
Co-authored-by: Stephen Compall <stephen.compall@digitalasset.com>
* Remove Scan app `enableAppActivityRecordAndTrafficIngestion` and `serveAppActivityRecordsAndTraffic` config options (#6643)
This removes the `enableAppActivityRecordAndTrafficIngestion` and `serveAppActivityRecordsAndTraffic` config options and the optionality proliferation that they resulted in.
---------
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Re-enable `SplitwellUpgradeIntegrationTest` (#6748)
* Re-enable `SplitwellUpgradeIntegrationTest`.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Ensure DAR is uploaded and multi-synchronizer feature flag is enabled.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Remove unneeded log assertion.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Re-enable `SplitwellUpgradeFrontendIntegrationTest` as well.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Move `splitwellUpgradeSynchronizerId` to after Alice's participant connects to that synchronizer.
This fixes an issue where the `balance update and invite contracts follow group, which follows installs` test would fail when run in isolation because Alice hadn't connected to the splitwell upgrade synchronizer. When the suite was run in full, earlier tests ensured the pre-condition was met, but this prevents devs from running a command like `testOnly ... -- -z "balance update"`.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
---------
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Bump version to 0.7.4 and latest release to 0.7.3 (#6795)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Fix buffer usage metric in jvm dashboard (#6796)
[static]
Not sure if this was ever right but it doesn't work atm.
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* [ci] fully retire artifactory from splice (#6498)
Addresses #6448 (the splice side)
---------
Signed-off-by: Itai Segall <itai.segall@digitalasset.com>
* Expose vote creation metrics (#6780)
Signed-off-by: Paweł Perek <pawel.perek@digitalasset.com>
* apply the envoy flow control to the sequencer bft endpoint (#6784)
* apply the envoy flow control to the sequencer bft endpoint
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Extend splice rate limits (#6764)
* Extend splice rate limits
Valid for scan and sv app
Add global rate limiter (previosly we rate limited only each individual operation), which is enabled by default.
Add the ability to rate limit also per ip for each oepration (disabled by default). The global rate limiter has this option enabled by default.
Extend the rate limiter to check a longer interval (60s). The previous behavior was checking only the last 1s, this is still in place and works as a burst limiter, allowing for shorter burts but the longer interval enforces a lower limit for the configured interval.
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Revert "Extend splice rate limits (#6764)" (#6807)
This reverts commit ec3d767c3e7585c9e8930b63a17d618e7e24749f.
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* add BFT enforcement for bulk storage objects (#6438)
Signed-off-by: Itai Segall <itai.segall@digitalasset.com>
* fix dso missed confirmation alert (#6806)
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* helm: quote validator wallet user ids (#6805)
validatorWalletUsers is rendered into a HOCON fragment as
canton.validator-apps.validator_backend.validator-wallet-users.0 = {{ $user }}
unquoted, and validatorWalletUser into an env var value unquoted. Both break
for user ids that are not bare alphanumeric strings:
- '@' is not allowed in an unquoted HOCON string, so an id that is an email
address -- which some identity providers use as the user id -- produces a
config the validator app cannot parse.
- An all-digit id becomes a HOCON number rather than a string, and in the env
var case renders as a YAML integer, which is not a valid container env value.
Quote both. The surrounding code already does this elsewhere -- scanAddress
uses `| quote`, and the scan-client sv-names and seed-urls lists use
`| toJson` -- so these two sites look like oversights rather than intent.
Note for anyone who worked around this by embedding literal double quotes in
the value: those must now be removed, or the id ends up double-quoted.
Signed-off-by: Stephane Loeuillet <stephane.loeuillet@kaiko.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
* New store for unavailable parties (#6725)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* recreate node pools on machine type changes to work around a provider bug (#6819)
[static]
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Fix gcloud link in Enforced requests alert (#6820)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* extend splice rate limits (#6812)
* Extend splice rate limits
Valid for scan and sv app
Add global rate limiter (previosly we rate limited only each individual operation), which is enabled by default.
Add the ability to rate limit also per ip for each oepration (disabled by default). The global rate limiter has this option enabled by default.
Extend the rate limiter to check a longer interval (60s). The previous behavior was checking only the last 1s, this is still in place and works as a burst limiter, allowing for shorter burts but the longer interval enforces a lower limit for the configured interval.
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Restart CometBFT when it starts replaying messages (#6823)
* Restart CometBFT when it starts replaying messages
fixes #6823
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Apply suggestions from code review
Co-authored-by: Martin Florian <martin.florian@digitalasset.com>
Signed-off-by: moritzkiefer-da <45630097+moritzkiefer-da@users.noreply.github.com>
* randomize
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* snippet
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* catch all exceptions
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Handle decreases in counter metrics
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* fix config
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
---------
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Signed-off-by: moritzkiefer-da <45630097+moritzkiefer-da@users.noreply.github.com>
Co-authored-by: Moritz Kiefer <moritz.kiefer@purelyfunctional.org>
Co-authored-by: Martin Florian <martin.florian@digitalasset.com>
* enable split-sv deployment for scratchnets by default (#6808)
[static]
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Apply node type changes from scratch (#6827)
* Apply node type changes from scratch
[static]
Copypasta from https://github.com/DACH-NY/canton-network-internal/commit/f6af5604a67439e2a8d71f6204cec8a43c328eb4
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* scratchnet config only
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
---------
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Double scan rate limits for `/registry/transfer-instruction/v1/transfer-factory` (#6830)
Based on experience on MainNet, see DACH-NY/canton-network-internal#6543
This endpoint is cheap, some IP(s) are getting rate limited at 3-4 requests / second.
[static]
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Revert "Re-enable `SplitwellUpgradeIntegrationTest` (#6748)" (#6829)
[ci]
fixes #9652
This reverts commit 429825f355658d46f30dda24c3a4dc8a992590dc.
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Upgrade Canton to 3.5.14-snapshot.20260815.19176.0.v65fa04f6 (#6797)
fwd port from #6789
[ci]
---------
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Add proposal search functionality (#6491)
Signed-off-by: Tim Pelzer <tim.pelzer@finoa.io>
* Bump deduplication cache size to 1000000 (#6852)
[static]
We already asked everyone to apply that on mainnet so may as well make
it the default.
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Extend splice rate limiting monitoring (#6851)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Start splice rate limiters with the configured no of permits available (#6849)
If not the per IP rate limiters come in to force too aggressive.
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Improve istio rate limits (#6824)
* Improve istio rate limits
change per ip attribute used
increase max dynamic attributes
enable rate limiting headers, log them, then drop them
add validation to the limits
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Improve client ip rate limits (#6853)
Add ability to disable fallback for headers
Remove default rate limit when no ip is known and instead just count it through a metric (we count on the global rate limiter to avoid SVs that don't extract the ip correctly to just rate limit everyone more aggressivly)
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Add the ability to restrict whitelisting only to the required hosts (#6621)
* Add the ability to restrict whitelisting only to the required hosts
Instead of allowing access through the general whitelist we add specific scan/sv app/sequencer/cantonbft allow lists that target only the ip that are required and keep the general whitelisting only for internal ips.
cantonbft is exposed only to the svs
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* improve failure message in packagesAreVetted test (#6838)
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* Allow external CI on forks for staging bases (#6860) (#6864)
* Allow external CI on forks for staging bases (#6860)
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Actually enable ci for staging bases
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
---------
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Upgrade Canton to 3.5.14-snapshot.20260819.19183.0.va7a6d3ae (#6865)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Allow closing contributions that did not get maintainer approval beforehand (#6867)
[static]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* manually clear BigQuery with datatransfer instead of relying on table expiry (#6813)
* added purge datatransfer job for manually deleting records after 7 days from staging tables
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* Addressed PR comments [ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* Addressed PR comments - sharing IAMMember [ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* Addressed PR comments - sharing IAMMember with defaul removed for 7 days [ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* Addressed PR comments - sharing IAMMember with defaul removed for 7 days [ci] new
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* fixed zod error messages [ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* npm run fix changes [[ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* formatting cahnges to cloudArmor.ts [ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* [ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
---------
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* in splitwell test, wait longer for checkWallets via argument rather than wrapped eventually (#6869)
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
* Enable gcp enhanced insights for enterprise plus (#6873)
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* fix: added missing feature flag for multisync (#6809)
---------
Signed-off-by: jarekr-da <jaroslaw.ratajski@digitalasset.com>
* Remove in-app rate limit override for `getDateOfMostRecentSnapshotBefore` (#6875)
[static]
A client gets rate limited on this on MainNet DA-2. Upon closer inspection, this endpoint triggers a very cheap query answered by an index scan: https://github.com/canton-network/splice/blob/1973921ef727fded6d6d3734b00e7eeca4010b51/apps/scan/src/main/scala/org/lfdecentralizedtrust/splice/scan/store/AcsSnapshotStore.scala#L72
This doesn't sound as if special rate-limiting is needed at all.
Signed-off-by: Martin Florian <martin.florian@digitalasset.com>
* Bump Canton to 3.5.14 (#6887)
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Clear release notes for 0.7.4 (#6888)
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Update versions after 0.7.4 (#6890)
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* handle missing objects correctly when getting s3 checksums (#6844)
* [ci] handle missing objects correctly when getting s3 checksums
Signed-off-by: Itai Segall <itai.segall@digitalasset.com>
* [ci] better logging
Signed-off-by: Itai Segall <itai.segall@digitalasset.com>
* [ci] .
Signed-off-by: Itai Segall <itai.segall@digitalasset.com>
* [ci] fmt
Signed-off-by: Itai Segall <itai.segall@digitalasset.com>
---------
Signed-off-by: Itai Segall <itai.segall@digitalasset.com>
* Backport PR #6891 (don't OOM on missing projectId with bigQuery.enableStagProdDatastream=true) to main (#6893)
---------
Signed-off-by: Stephen Compall <stephen.compall@digitalasset.com>
Signed-off-by: DA Automation <splice-maintainers@digitalasset.com>
Co-authored-by: Stephen Compall <stephen.compall@digitalasset.com>
Co-authored-by: DA Automation <splice-maintainers@digitalasset.com>
* Stop scan connection alerts triggering when value is NaN (#6898)
Signed-off-by: Julien Tinguely <julien.tinguely@digitalasset.com>
* Add missing sbt dependency (#6897)
Seen here as a failure
https://github.com/canton-network/splice/actions/runs/32459976647/job/96705530387?pr=6896
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* Avoid racy synchronizer connection query (#6896)
fixes https://github.com/DACH-NY/cn-test-failures/issues/9447 and
supersedes #6642
Imho this is the proper fix: Avoid making a separate query after the
retry when the state may already have changed.
[ci]
Signed-off-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
Co-authored-by: moritz.kiefer@digitalasset.com <moritz.kiefer@purelyfunctional.org>
* client ip rate limiting - configurable headers (#6905)
* client ip rate limiting - configurable headers
[ci]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Partition overflow problem solved per issue #6919 [ci] (#6923)
* Partition overflow problem solved per issue #6919 [ci]
Signed-off-by: Kajal <kajal.shah@digitalasset.com>
* Fix grafana dashboard panel for hidden app reward coupons (#6850)
Signed-off-by: Robert Autenrieth <robert.autenrieth@digitalasset.com>
* Enable minimal whitelisting by default (#6928)
[static]
Signed-off-by: Nicu Reut <nicu.reut@digitalasset.com>
* Final Implementation Initiate Proposal Flow (#6410)
Signed-off-by: Puneet Bharti <puneet.bharti@finoa.io>
Co-authored-by: Puneet Bharti <puneet.bharti@finoa.io>
* fix stack references and their mocks to allow migrating to split-SV deployment on prod clusters (#6908)
Signed-off-by: Mateusz Błażejewski <mateusz.blazejewski@digitalasset.com>
* Improve splice rate limit dashboard - include rate limiter type and attribute (#6926)
* Use configured client IP headers in request logs (#6924)
Signed-off-by: Vladislav Lapin <v.lapin@scalablesolutions.io>
Co-authored-by: Vladislav Lapin <v.lapin@scalablesolutions.io>
* Traffic-Based App Rewards: Clearly distinguish not-ingestable from not-yet-ingested (#6694)
Signed-off-by: Tim Emiola <adetokunbo@emio.la>
* Remove logic to restart triggers on epoch changes. (#6935)
Fixes #4265
This removes `RestartDsoDelegateBasedAutomationTrigger` and updates `SvDsoAutomationService` to construct and start the `DsoDelegateBasedAutomationService`.
Signed-off-by: Matt Dziuban <mrdziuban@gmail.com>
* Remove lo…
Brings the branch from 0.6.12 to 0.7.5, 327 upstream commits. Two things needed resolving. TrafficBasedRewardsSvAppTimeBasedIntegrationTest was restructured upstream around the same block where we added two optional arguments to AmuletRules_StartProcessingRewardsV2: took the upstream structure and reapplied the arguments. Both sides also added a V073 migration, which merged cleanly as two files but is a version collision, so ours is renumbered to V074. Signed-off-by: sadiq1971 <sadiqurr8@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings the working branch from 0.6.12 to 0.7.5, 327 upstream commits, now that #18 has landed on
main.Merge rather than rebase, so the seven PoC commits on this branch keep their history.
Conflicts, and how they were resolved
Of our 46 changed files, 11 overlap with the 2032 main touched. Ten auto-merged; I checked each kept our side. Two needed a decision.
TrafficBasedRewardsSvAppTimeBasedIntegrationTest.scala— the only textual conflict. We added twoOptional.empty()arguments toAmuletRules_StartProcessingRewardsV2(#8 extended that choice); upstream restructured the same region, adding awithExpectedRewardTriggersLogginghelper and anAppActivityRecordMetaTuserVersion simulation. Took the upstream structure wholesale and reapplied our two arguments to the one call site inside it. The raw merge had produced a duplicatedclueblock; upstream's own copy has it once, which is what this now matches.V073migration collision — no textual conflict, which is what makes it worth calling out. Upstream addedV073__dso_unavailable_parties.sql, we hadV073__sync_operator_acs_store.sql. Different filenames, so git took both happily and Flyway then refuses to start:Found more than one migration with version 073. Ours is renumbered to V074; upstream's keeps 073. Nothing references the file by name.