diff --git a/core/Cargo.lock b/core/Cargo.lock index 1e79f2fd..dc3872a5 100644 --- a/core/Cargo.lock +++ b/core/Cargo.lock @@ -80,7 +80,7 @@ checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "archipelago" -version = "1.7.22-alpha" +version = "1.7.23-alpha" dependencies = [ "anyhow", "archipelago-container", diff --git a/core/archipelago/Cargo.toml b/core/archipelago/Cargo.toml index 05c8cf1b..a32f0711 100644 --- a/core/archipelago/Cargo.toml +++ b/core/archipelago/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "archipelago" -version = "1.7.22-alpha" +version = "1.7.23-alpha" edition = "2021" description = "Archipelago Bitcoin Node OS - Native backend" authors = ["Archipelago Team"] diff --git a/neode-ui/src/views/server/FipsNetworkCard.vue b/neode-ui/src/views/server/FipsNetworkCard.vue index 0badf5d8..c590d382 100644 --- a/neode-ui/src/views/server/FipsNetworkCard.vue +++ b/neode-ui/src/views/server/FipsNetworkCard.vue @@ -9,15 +9,57 @@

FIPS Mesh

-
- - {{ statusLabel }} +
+
+ + {{ statusLabel }} +
+

Fast Nostr-keyed mesh routing

+ + + +
+
+
+
+ +
+ +
+
+
+
+

Daemon version

@@ -84,6 +126,7 @@ import { computed, onMounted, ref } from 'vue' import { rpcClient } from '@/api/rpc-client' import { safeClipboardWrite } from '@/views/web5/utils' +import FipsSeedAnchorsCard from './FipsSeedAnchorsCard.vue' interface FipsStatus { installed: boolean @@ -113,6 +156,7 @@ const reconnecting = ref(false) const statusMessage = ref('') const statusIsError = ref(false) const copied = ref(false) +const showAnchorsModal = ref(false) async function copyNpub() { if (!status.value.npub) return diff --git a/neode-ui/src/views/settings/AccountInfoSection.vue b/neode-ui/src/views/settings/AccountInfoSection.vue index 746fdb8a..275879bb 100644 --- a/neode-ui/src/views/settings/AccountInfoSection.vue +++ b/neode-ui/src/views/settings/AccountInfoSection.vue @@ -180,6 +180,17 @@ init()
+ +
+
+ v1.7.23-alpha + Apr 21, 2026 +
+
+

FIPS Seed Anchors are now one click away. A small gear icon sits next to the status pill on the FIPS Mesh card — click it to open a modal where you can add, remove, and re-apply anchors. No more needing to go digging for the card or editing JSON by hand.

+

The modal lists each anchor with its label, truncated npub, address, and transport, plus an Apply button to force-redial the full list and a Remove button per entry. The add form right below validates that the address is host:port and the npub is bech32 before saving.

+
+
diff --git a/releases/manifest.json b/releases/manifest.json index c2f95690..5302b029 100644 --- a/releases/manifest.json +++ b/releases/manifest.json @@ -1,27 +1,26 @@ { - "version": "1.7.22-alpha", + "version": "1.7.23-alpha", "release_date": "2026-04-21", "changelog": [ - "FIPS Reconnect and Restart buttons now work on every node, regardless of which systemd unit is actually supervising the daemon. Previously they targeted only the archipelago-managed unit — nodes on the upstream unit saw the buttons silently do nothing. Both paths auto-detect which unit is up and act on that one.", - "FIPS anchor status no longer shows red just because a specific public anchor is unreachable. It now lights green whenever any authenticated peer is a recognised anchor — public or one you added under Seed Anchors. Federated clusters that route through their own seed anchors finally report the truth.", - "Reconnect also re-pushes your seed anchors after the restart, so you don't have to wait five minutes for the background apply loop to re-dial them." + "FIPS Seed Anchors are now one click away. A small gear icon sits next to the status pill on the FIPS Mesh card — click it to open a modal where you can add, remove, and re-apply anchors. No more needing to go digging for the card or editing JSON by hand.", + "The modal lists each anchor with its label, truncated npub, address, and transport, plus an Apply button to force-redial the full list and a Remove button per entry. The add form right below validates that the address is host:port and the npub is bech32 before saving." ], "components": [ { "name": "archipelago", - "current_version": "1.7.21-alpha", - "new_version": "1.7.22-alpha", - "download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.22-alpha/archipelago", - "sha256": "43d632c7de75b5619b20dcb59ca5e561708fe7f8d0138b3bda7accb109a61ef6", - "size_bytes": 40818136 + "current_version": "1.7.22-alpha", + "new_version": "1.7.23-alpha", + "download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.23-alpha/archipelago", + "sha256": "ec5a1b4e6fcc4377c3e79abc7bf0b46d94912ce312b0004edf2620d5fb268126", + "size_bytes": 40817000 }, { - "name": "archipelago-frontend-1.7.22-alpha.tar.gz", - "current_version": "1.7.21-alpha", - "new_version": "1.7.22-alpha", - "download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.22-alpha/archipelago-frontend-1.7.22-alpha.tar.gz", - "sha256": "402ba9af8d6bbbfc649a1cf62c4df4f44d9e48c78136dae7c29721d816e478e9", - "size_bytes": 162082789 + "name": "archipelago-frontend-1.7.23-alpha.tar.gz", + "current_version": "1.7.22-alpha", + "new_version": "1.7.23-alpha", + "download_url": "https://git.tx1138.com/lfg2025/archy/raw/branch/main/releases/v1.7.23-alpha/archipelago-frontend-1.7.23-alpha.tar.gz", + "sha256": "4037e5da05c3404b0f2d30fd864659d4ef51680c9ecd13a7c4d351f7a8043bc3", + "size_bytes": 162082763 } ] } diff --git a/releases/v1.7.23-alpha/archipelago b/releases/v1.7.23-alpha/archipelago new file mode 100755 index 00000000..118745cd Binary files /dev/null and b/releases/v1.7.23-alpha/archipelago differ diff --git a/releases/v1.7.23-alpha/archipelago-frontend-1.7.23-alpha.tar.gz b/releases/v1.7.23-alpha/archipelago-frontend-1.7.23-alpha.tar.gz new file mode 100644 index 00000000..008c29e7 Binary files /dev/null and b/releases/v1.7.23-alpha/archipelago-frontend-1.7.23-alpha.tar.gz differ