This was discovered while debugging the reproducible build. We used the
wrong group ID. And the environment variables aren't super portable so
we use the correct command to get the numeric user and group IDs.
In the next commit, we'll bump our lnd dependency to `v0.18.3-beta`.
That version adds explicitly declared optional protos fields with commit
3de6c5415a
Optional proto fields are only available in Proto3 after protoc version
`3.15+`, and we therefore need to bump our protoc version for the protos
generation script to support them.
When doing so, we mimic the protobuf-compiler version used in `lnd`,
which is `3.21.12`. As protobuf-compiler 3.21.x+ is only available for
Node.js base images with Debian 12 (bookworm), we also update our NodeJS
base image to version 22.8.0-bookworm.
We add a new channel constraint rule that enforces limits on channel
opening for the OpenChannelSync and BatchOpenChannel end points.
The channel constraint rule takes care about:
* min channel size
* max channel size
* max push amount
* no closing address was used
* to sessions in order to get details when running `autopilot list`
* to the autopilot rpc to be able to register features with privacy
flags via cli `autopilot add`
* to Features to know about default privacy flags in `autopilot features`
* to RegisterAutopilotSession in order to communicate to the autopilot
which privacy flags are being used after `autopilot add`
Update the Autopilot service AddAutopilotSessionRequest message to
include a new `group_id` field. Users may set this field to the ID of a
sessino group in order to link the new session to the older ones. The
Session message is also updated with new `group_id` field which will be
populated by the group a session.
The latest version of the Pool protos contains the new initiator field
that we want to set when opening accounts or submitting orders.
Because the auctioneer proto file was moved to its own package, we also
have to fix a bunch of import paths.