Lightning Network Daemon ⚡️
This report summarizes scanner evidence for lightningnetwork/lnd, a Go project with 8,209 GitHub stars. SynthScan examined 913,594 lines of code across 2266 source files, recording 2849 pattern matches distributed across 10 syntactic categories. The legacy adjusted pattern signal is 3.4 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 2818 finding(s).
Are imports declared and package/API names verified? 2 finding(s).
Are wrappers, guards, and repeated structures necessary? 29 finding(s).
Which changes need focused human review? 2849 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 2849 distinct pattern matches across 10 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | config.go | 101 | // MaxTimeLockDelta is the maximum CLTV delta that can be applied to | COMMENT |
| LOW | config.go | 161 | COMMENT | |
| LOW | config.go | 181 | defaultLeaderCheckAttempts = 1 | COMMENT |
| LOW | config.go | 201 | COMMENT | |
| LOW | config.go | 221 | // defaultCoinSelectionStrategy is the coin selection strategy that is | COMMENT |
| LOW | config.go | 621 | // doesn't respond to a pong in time. | COMMENT |
| LOW | config.go | 641 | // ServerPingTime is a duration for the amount of time of no activity | COMMENT |
| LOW | config.go | 661 | } | COMMENT |
| LOW | config.go | 2241 | } | COMMENT |
| LOW | subrpcserver_config.go | 41 | // subRPCServerConfigs is special sub-config in the main configuration that | COMMENT |
| LOW | subrpcserver_config.go | 61 | COMMENT | |
| LOW | subrpcserver_config.go | 81 | // payment related queries such as requests for estimates of off-chain | COMMENT |
| LOW | server.go | 101 | // backoffs reduced. | COMMENT |
| LOW | server.go | 121 | var ( | COMMENT |
| LOW | server.go | 141 | // to the value under the Bitcoin chain as default. | COMMENT |
| LOW | server.go | 261 | // natTraversal is the specific NAT traversal technique used to | COMMENT |
| LOW | server.go | 301 | // as a key for this map. | COMMENT |
| LOW | server.go | 441 | actorSystem *actor.ActorSystem | COMMENT |
| LOW | server.go | 621 | // serving v2 onion services in October 2021, so callers skip these on dial | COMMENT |
| LOW | server.go | 1381 | // outlive the call that starts it: the closure returns as soon as | COMMENT |
| LOW | server.go | 1681 | // confirmations, we use it. | COMMENT |
| LOW | server.go | 4001 | // bannedPersistentPeerConnection does not actually "ban" a persistent peer. It | COMMENT |
| LOW | server.go | 4201 | // If the peer failed to start properly, we'll just use the previous | COMMENT |
| LOW | server.go | 4661 | // s.towerClientMgr then in the case that the s.towerClientMgr is nil, | COMMENT |
| LOW | server.go | 4901 | delete(s.peerConnectedListeners, pubStr) | COMMENT |
| LOW | server.go | 5281 | // connection is established, or the initial handshake process fails. | COMMENT |
| LOW | rpcserver.go | 1181 | // information returned is: outpoint, amount in satoshis, address, address | COMMENT |
| LOW | rpcserver.go | 2121 | // If we are not committing the maximum viable balance towards a channel | COMMENT |
| LOW | rpcserver.go | 2161 | // Use the protocol-level maximum as the upper bound for our | COMMENT |
| LOW | rpcserver.go | 3301 | COMMENT | |
| LOW | rpcserver.go | 5481 | ) | COMMENT |
| LOW | rpcserver.go | 6681 | // We'll run through all the known nodes in the within our view of the | COMMENT |
| LOW | rpcserver.go | 6801 | } | COMMENT |
| LOW | rpcserver.go | 7501 | COMMENT | |
| LOW | rpcserver.go | 7601 | // ForwardingHistory allows the caller to query the htlcswitch for a record of | COMMENT |
| LOW | rpcserver.go | 8561 | } | COMMENT |
| LOW | rpcserver.go | 8901 | return lnrpc.Initiator_INITIATOR_REMOTE | COMMENT |
| LOW | witness_beacon.go | 101 | COMMENT | |
| LOW | tls_manager.go | 61 | HTTPHeaderTimeout time.Duration | COMMENT |
| LOW | tls_manager.go | 141 | // We set this to 200MiB atm. Should be the same value as maxMsgRecvSize | COMMENT |
| LOW | .golangci.yml | 41 | COMMENT | |
| LOW | .golangci.yml | 61 | - unparam | COMMENT |
| LOW | config_builder.go | 81 | // that migrates the KV graph to the native SQL schema. | COMMENT |
| LOW | config_builder.go | 101 | // that wants to be able to register its own REST mux onto lnd's main | COMMENT |
| LOW | config_builder.go | 201 | } | COMMENT |
| LOW | config_builder.go | 301 | // checks its signature, makes sure all specified permissions for the called | COMMENT |
| LOW | config_builder.go | 561 | } | COMMENT |
| LOW | config_builder.go | 1201 | ) | COMMENT |
| LOW | config_builder.go | 1301 | "native SQL store: %w", err) | COMMENT |
| LOW | chanrestore.go | 21 | const ( | COMMENT |
| LOW | chanrestore.go | 261 | channel := chanShell.Chan | COMMENT |
| LOW | chanrestore.go | 321 | // A compile-time constraint to ensure chanDBRestorer implements | COMMENT |
| LOW | accessman.go | 21 | // the server mutex. | COMMENT |
| LOW | lnd.go | 61 | // admin macaroon unless the administrator explicitly allowed it. Thus | COMMENT |
| LOW | tlv/stream.go | 61 | // MustNewStream creates a new TLV Stream given an encoding codec, a decoding | COMMENT |
| LOW | tlv/stream.go | 121 | // [varint: type] | COMMENT |
| LOW | offers/create.go | 21 | // CreateOfferParams holds the fields of a new offer. Each field maps to a | COMMENT |
| LOW | offers/interface.go | 41 | type Store interface { | COMMENT |
| LOW | payments/db/test_harness.go | 21 | // AssertNoIndex checks that an index for a sequence number doesn't | COMMENT |
| LOW | payments/db/query.go | 1 | package paymentsdb | COMMENT |
| 2449 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | server.go | 2311 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 2339 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 2877 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 3056 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 3969 | // NOTE: This method MUST be run as a goroutine. | COMMENT |
| LOW | server.go | 4023 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 4073 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 4155 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 4169 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 4252 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 4348 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 5283 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 5389 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 5428 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | server.go | 5486 | // NOTE: This function is safe for concurrent access. | COMMENT |
| LOW | payments/db/migration1/sqlc/db_custom.go | 60 | // NOTE: This method is part of the PaymentAndIntent interface. | COMMENT |
| LOW | payments/db/migration1/sqlc/db_custom.go | 69 | // NOTE: This method is part of the PaymentAndIntent interface. | COMMENT |
| LOW | payments/db/migration1/sqlc/db_custom.go | 83 | // NOTE: This method is part of the PaymentAndIntent interface. | COMMENT |
| LOW | payments/db/migration1/sqlc/db_custom.go | 92 | // NOTE: This method is part of the PaymentAndIntent interface. | COMMENT |
| LOW | contractcourt/contract_resolver.go | 58 | // NOTE: This function MUST be run as a goroutine. | COMMENT |
| LOW | contractcourt/commit_sweep_resolver.go | 133 | // NOTE: This function MUST be run as a goroutine. | COMMENT |
| LOW | contractcourt/chain_arbitrator.go | 856 | // NOTE: This method will timeout if the processing of blocks of the | COMMENT |
| LOW | contractcourt/briefcase.go | 118 | // NOTE: This method only exists in order to be able to serve nodes had | COMMENT |
| LOW | shachain/store.go | 107 | // NOTE: This function is part of the Store interface. | COMMENT |
| LOW | shachain/store.go | 130 | // NOTE: This function is part of the Store interface. | COMMENT |
| LOW | shachain/store.go | 163 | // NOTE: This function is part of the Store interface. | COMMENT |
| LOW | netann/channel_update.go | 76 | // NOTE: This method modifies the given update. | COMMENT |
| LOW | netann/chan_status_manager.go | 335 | // NOTE: This method MUST be run as a goroutine. | COMMENT |
| LOW | rpcperms/interceptor.go | 531 | // NOTE: This method is part of the macaroons.CustomCaveatAcceptor interface. | COMMENT |
| LOW | invoices/update.go | 451 | // NOTE: This function is only kept in place in order to be able to handle key | COMMENT |
| LOW | input/musig2.go | 73 | // NOTE: This method is mutually exclusive with MuSig2RegisterNonces for | COMMENT |
| LOW | input/musig2.go | 167 | // NOTE: This method is mutually exclusive with RegisterPubNonce. Once | COMMENT |
| LOW | input/signer.go | 31 | // NOTE: This method will ignore any tweak parameters set within the | COMMENT |
| LOW | input/musig2_session_manager.go | 318 | // NOTE: This method is mutually exclusive with MuSig2RegisterNonces for the | COMMENT |
| LOW | graph/builder.go | 1035 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1079 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1176 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1294 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1309 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1324 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1334 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1357 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1367 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1385 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1393 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1405 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1417 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/builder.go | 1476 | // NOTE: This method is part of the ChannelGraphSource interface. | COMMENT |
| LOW | graph/db/graph_cache.go | 345 | // NOTE: This method should be considered _read only_, the channels or nodes | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 56 | // NOTE: This method is part of the ChannelAndNodes interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 63 | // NOTE: This method is part of the ChannelAndNodes interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 70 | // NOTE: This method is part of the ChannelAndNodes interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 90 | // NOTE: This method is part of the ChannelAndNodeIDs interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 97 | // NOTE: This method is part of the ChannelAndNodeIDs interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 104 | // NOTE: This method is part of the ChannelAndNodeIDs interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 111 | // NOTE: This method is part of the ChannelAndNodes interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 118 | // NOTE: This method is part of the ChannelAndNodes interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 125 | // NOTE: This method is part of the ChannelAndNodeIDs interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 132 | // NOTE: This method is part of the ChannelAndNodeIDs interface. | COMMENT |
| LOW⚡ | graph/db/migration1/sqlc/db_custom.go | 139 | // NOTE: This method is part of the ChannelAndNodeIDs interface. | COMMENT |
| 173 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | contractcourt/utxonursery.go | 87 | // ┌────────────────┐ ┌──────────────┐ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 89 | // └────────────────┘ └──────────────┘ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 93 | // ┌───────────┼────────────────┬───────────┼───────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 98 | // │ │ ┌──────┐ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 100 | // │ │ └──────┘ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 116 | // │ ┌──────┐ │ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 118 | // │ └──────┘ │ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 127 | // │ │ ┌──────┐ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 129 | // │ └──────┘ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 144 | // │ ┌──────┐ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 146 | // │ └──────┘ │ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 150 | // └────────────────────────────────────────┼───────────────────────────────┘ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 156 | // ┌────────────────┐ | COMMENT |
| MEDIUM⚡ | contractcourt/utxonursery.go | 158 | // └────────────────┘ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 148 | // ┌─────────┐ drainInputList ┌──────────┐ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 149 | // │inputList├─────┬──────────►│disk/db │ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 150 | // └─────────┘ │ └──────────┘ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 152 | // │ ┌──────────┐ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 153 | // └──────────►│inputChan │ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 154 | // └──────────┘ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 156 | // ┌─────────┐ feedMemQueue ┌──────────┐ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 157 | // │disk/db ├───────┬────────►│memQueue │ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 158 | // └─────────┘ │ └──────────┘ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 160 | // ┌─────────┐ │ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 161 | // │inputChan├───────┘ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 162 | // └─────────┘ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 164 | // ┌─────────┐ feedOutputChan ┌──────────┐ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 165 | // │memQueue ├────────────────►│outputChan│ | COMMENT |
| MEDIUM⚡ | watchtower/wtclient/queue.go | 166 | // └─────────┘ └──────────┘ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | server.go | 1772 | // utilize the full bandwidth of the channel, minus our | COMMENT |
| MEDIUM | server.go | 1782 | // By default, we'll permit them to utilize the full | COMMENT |
| MEDIUM | server.go | 4236 | // utilize the ordering of the local and remote public key. If we didn't use | COMMENT |
| MEDIUM | tlv/record.go | 71 | // Record (the type). This makes it seamless to mix primitive and dynamic | COMMENT |
| MEDIUM | payments/db/sql_store.go | 960 | // payments and would better leverage the existing pagination infrastructure. | COMMENT |
| MEDIUM | payments/db/migration1/sql_store.go | 1032 | // payments and would better leverage the existing pagination infrastructure. | COMMENT |
| MEDIUM | kvdb/etcd/readwrite_bucket.go | 80 | // which put a revision "lock" in the read set. We can leverage this | COMMENT |
| MEDIUM | invoices/invoiceregistry_test.go | 2706 | // received. Moreover it points out some TODOs to make AMP invoices more robust. | COMMENT |
| MEDIUM | chanacceptor/interface.go | 21 | // can each leverage their own decision-making with this information. | COMMENT |
| MEDIUM | graph/db/kv_store.go | 1242 | // utilize an existing db transaction. | COMMENT |
| MEDIUM | graph/db/migration1/kv_store.go | 650 | // utilize an existing db transaction. | COMMENT |
| MEDIUM | discovery/bootstrapper.go | 50 | // MultiSourceBootstrap attempts to utilize a set of NetworkPeerBootstrapper | COMMENT |
| MEDIUM | discovery/sync_manager.go | 110 | // will utilize this in order to create and respond to channel graph | COMMENT |
| MEDIUM | discovery/validation_barrier_test.go | 273 | // occasionally. This tests that the VB is robust against ordering / | COMMENT |
| MEDIUM | discovery/gossiper.go | 222 | // peer will utilize this in order to create and respond to channel | COMMENT |
| MEDIUM | chanstate/open_channel.go | 863 | // robust key for matching the same HTLC across commitment snapshots. | COMMENT |
| MEDIUM | peer/brontide.go | 2527 | // particular channel link in the htlcswitch. We utilize additional | COMMENT |
| MEDIUM | htlcswitch/switch.go | 3123 | // sender selected, while optimistically trying all links to utilize | COMMENT |
| MEDIUM | htlcswitch/hop/payload.go | 512 | // payment-related features that they utilize other than tlv-onion, | COMMENT |
| MEDIUM | lnwire/channel_reestablish.go | 225 | // still utilize the io.Reader interface. | COMMENT |
| MEDIUM | lntest/harness.go | 936 | // SpendUnconfirmed is a boolean indicating whether we can utilize | COMMENT |
| MEDIUM | lntest/btcd.go | 120 | // tests more robust. We might need to restart the backend while there | COMMENT |
| MEDIUM | lntest/harness_setup.go | 95 | // settings to make the tests more robust. We might need to restart the | COMMENT |
| MEDIUM | lntest/unittest/backend.go | 59 | // tests more robust. We might need to restart the backend while there | COMMENT |
| MEDIUM | channeldb/forwarding_log.go | 355 | // utilize pagination to seek further. | COMMENT |
| MEDIUM | channeldb/migration/lnwire21/channel_reestablish.go | 113 | // still utilize the io.Reader interface. | COMMENT |
| LOW | scripts/gen_sqlc_docker.sh | 28 | # numbers anyway, independent of the column type. So we can just use | COMMENT |
| MEDIUM | autopilot/prefattach.go | 69 | // in/out of the node available via its open channels) and utilize the | COMMENT |
| MEDIUM | lnrpc/signrpc/signer_server.go | 296 | // deserialize it into something that we can properly utilize. | COMMENT |
| MEDIUM | lnrpc/signrpc/signer_server.go | 526 | // deserialize it into something that we can properly utilize. | COMMENT |
| MEDIUM | lnwallet/reservation.go | 956 | // utilize the now freed resources. | COMMENT |
| MEDIUM | lnwallet/interface.go | 263 | // a "higher" level of abstraction. Essentially, an overlay wallet. | COMMENT |
| MEDIUM | lnwallet/interface.go | 677 | // to the network, or just arbitrary messages that leverage the wallet's keys | COMMENT |
| MEDIUM | lnwallet/btcwallet/psbt.go | 542 | // private key in order to utilize the tweaks, if populated. | COMMENT |
| MEDIUM | lnwallet/btcwallet/signer.go | 242 | // in order to utilize the tweaks, if populated. If both tweak parameters are | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | accessman.go | 167 | // restricted, then we need to check if we even have a slot for this | COMMENT |
| LOW | accessman.go | 314 | // If this peer is temporary, we need to check if it will | COMMENT |
| LOW | walletunlocker/service.go | 802 | // Before we actually change the password, we need to check if all flags | COMMENT |
| LOW | itest/lnd_invoice_migration_test.go | 174 | // Step 1: Add 10 normal invoices and pay 5 of them. | COMMENT |
| LOW | itest/lnd_invoice_migration_test.go | 196 | // Step 2: Add 10 AMP invoices and send multiple payments to 5 of them. | COMMENT |
| LOW | itest/lnd_payment_migration_test.go | 78 | // Step 1: Send payments from Alice to Bob before the migration. These | COMMENT |
| LOW | itest/lnd_payment_migration_test.go | 115 | // Step 2: Start Alice with --db.use-native-sql to trigger the | COMMENT |
| LOW | itest/lnd_payment_migration_test.go | 131 | // Step 3: Send payments after the migration. These must land in the | COMMENT |
| LOW | fn/goroutine_manager.go | 97 | // Before continuing to start the goroutine, we need to check if the | COMMENT |
| LOW | sqldb/paginate.go | 267 | // Step 1: Fetch the next page of items. | COMMENT |
| LOW | sqldb/paginate.go | 279 | // Step 2: Collect identifiers from this page and batch load | COMMENT |
| LOW | sqldb/paginate.go | 297 | // Step 3: Process each item in this page with the shared batch | COMMENT |
| LOW | sqldb/v2/paginate.go | 267 | // Step 1: Fetch the next page of items. | COMMENT |
| LOW | sqldb/v2/paginate.go | 279 | // Step 2: Collect identifiers from this page and batch load | COMMENT |
| LOW | sqldb/v2/paginate.go | 297 | // Step 3: Process each item in this page with the shared batch | COMMENT |
| LOW | lnwallet/test/test_interface.go | 2197 | // Step 1: create a new miner and start it. | COMMENT |
| LOW⚡ | lnwallet/test/test_interface.go | 2208 | // Step 2: connect the miner to the passed miner and wait for | COMMENT |
| LOW⚡ | lnwallet/test/test_interface.go | 2215 | // Step 3: Do a set of reorgs by disconnecting the two miners, mining | COMMENT |
| LOW | lnwallet/test/test_interface.go | 2259 | // Step 5: Reconnect the miners and wait for them to synchronize. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | netann/chan_status_manager_test.go | 392 | // Initialize link status as requested. | COMMENT |
| HIGH | invoices/sql_store.go | 489 | // Now that we got the invoice itself, fetch the HTLCs as requested by | COMMENT |
| HIGH | graph/db/migration1/sql_migration.go | 707 | // as requested. | COMMENT |
| HIGH | watchtower/wtclient/errors.go | 30 | // acquire a new session as requested. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/check-go-version-yaml.sh | 12 | # Check if any lines specify the Go version. | COMMENT |
| LOW | scripts/check-go-version-yaml.sh | 18 | # Check if the extracted Go version matches the required version. | COMMENT |
| LOW⚡ | scripts/check-go-version-yaml.sh | 38 | # Check if any lines specify the Go version. | COMMENT |
| LOW⚡ | scripts/check-go-version-yaml.sh | 48 | # Check if the extracted Go version matches the required version. | COMMENT |
| LOW⚡ | scripts/check-go-version-yaml.sh | 58 | # Check if the target Go version argument is provided. | COMMENT |
| LOW | scripts/gen_man_pages.sh | 5 | # Check if lncli is installed. | COMMENT |
| LOW | scripts/unit-test-flake-hunter.sh | 3 | # Check if pkg and case variables are provided. | COMMENT |
| LOW | scripts/gen_sqlc_docker.sh | 16 | # Set trap to call restore_files on script exit. This makes sure the old files | COMMENT |
| LOW | scripts/check-go-version-dockerfile.sh | 11 | # Check if all lines have the required Go version. | COMMENT |
| LOW | scripts/check-go-version-dockerfile.sh | 24 | # Check if the target Go version argument is provided. | COMMENT |
| LOW | scripts/release.sh | 156 | # Check if the active Go version matches the specified Go version. | COMMENT |
| LOW | scripts/check-release-notes-consistency.sh | 38 | # Print the value of the given constant in build/version.go. | COMMENT |
| LOW | scripts/check-pgp-expiry.sh | 17 | # Check if a key has expired or is expiring soon | COMMENT |
| LOW | scripts/bw-compatibility-test/network.sh | 67 | # Check if timeout has been reached | COMMENT |
| LOW | .github/workflows/backport.yml | 59 | # Check if branch exists in remote | COMMENT |
| LOW | .github/workflows/stats.yml | 17 | # Check if the PR is from the base repo (not a fork). Only the | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | funding/manager_test.go | 2596 | pendingChannels, err := bob.fundingMgr.cfg.Wallet.Cfg.Database.FetchPendingChannels() | CODE |
| CRITICAL | funding/manager_test.go | 2645 | pendingChannels, err := alice.fundingMgr.cfg.Wallet.Cfg.Database.FetchPendingChannels() | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | scripts/itest_parallel.sh | 11 | # Create a variable to hold the final exit code. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | lnrpc/lightning.yaml | 5 | # Please make sure to also update the `metadata.go` file when editing this file | COMMENT |