fix: BUG-33 CPU threshold, TASK-27 tab icons, TASK-36 iframe errors
- BUG-33: CPU load alert threshold increased from 2x to 4x core count (8→16 on 4-core machine) to reduce false alerts during container ops - TASK-27: Launch buttons for new-tab apps now show external link icon (BTCPay, Grafana, PhotoPrism, Portainer, OnlyOffice, etc.) - TASK-36: Iframe error screen now distinguishes between X-Frame-Options blocked vs container not reachable, with appropriate messaging Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
1ffc377a9c
commit
25ad68ac4c
@@ -159,7 +159,8 @@ const portMappings = {
|
||||
'portainer': 9443,
|
||||
'uptime-kuma': 3001,
|
||||
'tailscale': 41641,
|
||||
'fedimint': 8174,
|
||||
'fedimint': 8175,
|
||||
'thunderhub': 3010,
|
||||
'nostr-rs-relay': 7000,
|
||||
'syncthing': 8384,
|
||||
'penpot': 9001,
|
||||
@@ -388,6 +389,7 @@ const marketplaceMetadata = {
|
||||
'dwn': { title: 'Decentralized Web Node', shortDesc: 'Store and sync personal data with DID-based access', icon: '/assets/img/app-icons/dwn.svg' },
|
||||
'nostr-rs-relay': { title: 'Nostr Relay', shortDesc: 'Run your own Nostr relay', icon: '/assets/img/app-icons/nostr-rs-relay.svg' },
|
||||
'syncthing': { title: 'Syncthing', shortDesc: 'Peer-to-peer file synchronization', icon: '/assets/img/app-icons/syncthing.png' },
|
||||
'thunderhub': { title: 'ThunderHub', shortDesc: 'Lightning node management UI with channel management and payments', icon: '/assets/img/app-icons/thunderhub.svg' },
|
||||
'tor': { title: 'Tor', shortDesc: 'Anonymous communication over the Tor network', icon: '/assets/img/app-icons/tor.png' },
|
||||
'amin': { title: 'Amin', shortDesc: 'Administrative interface for Archipelago', icon: '/assets/icon/pwa-192x192-v2.png' },
|
||||
}
|
||||
@@ -723,6 +725,24 @@ const staticDevApps = {
|
||||
lanPort: 8083,
|
||||
icon: '/assets/img/app-icons/file-browser.webp',
|
||||
}),
|
||||
thunderhub: staticApp({
|
||||
id: 'thunderhub',
|
||||
title: 'ThunderHub',
|
||||
version: '0.13.31',
|
||||
shortDesc: 'Lightning node management UI',
|
||||
longDesc: 'Full Lightning node management — channels, payments, routing fees, and node health. Connect to your LND and manage everything from one dashboard.',
|
||||
state: 'running',
|
||||
lanPort: 3010,
|
||||
}),
|
||||
fedimint: staticApp({
|
||||
id: 'fedimint',
|
||||
title: 'Fedimint',
|
||||
version: '0.10.0',
|
||||
shortDesc: 'Federated Bitcoin mint',
|
||||
longDesc: 'Federated Chaumian e-cash mint with Guardian UI. Community custody, private payments, and Lightning gateways.',
|
||||
state: 'running',
|
||||
lanPort: 8175,
|
||||
}),
|
||||
}
|
||||
|
||||
function mergePackageData(dockerApps) {
|
||||
@@ -997,12 +1017,22 @@ app.post('/rpc/v1', (req, res) => {
|
||||
id: 'fedimint',
|
||||
title: 'Fedimint',
|
||||
description: 'Federated Chaumian e-cash mint — community custody, private payments, and Lightning gateways for your tribe.',
|
||||
version: '0.4.3',
|
||||
version: '0.10.0',
|
||||
icon: '/assets/img/app-icons/fedimint.png',
|
||||
author: 'Fedimint',
|
||||
license: 'MIT',
|
||||
category: 'Bitcoin',
|
||||
},
|
||||
{
|
||||
id: 'thunderhub',
|
||||
title: 'ThunderHub',
|
||||
description: 'Lightning node management UI — manage channels, send and receive payments, view routing fees, and monitor your node health.',
|
||||
version: '0.13.31',
|
||||
icon: '/assets/img/app-icons/thunderhub.svg',
|
||||
author: 'Anthony Potdevin',
|
||||
license: 'MIT',
|
||||
category: 'Bitcoin',
|
||||
},
|
||||
{
|
||||
id: 'vaultwarden',
|
||||
title: 'Vaultwarden',
|
||||
@@ -1305,7 +1335,50 @@ app.post('/rpc/v1', (req, res) => {
|
||||
}
|
||||
|
||||
case 'node.notifications': {
|
||||
return res.json({ result: [] })
|
||||
return res.json({
|
||||
result: [
|
||||
{
|
||||
id: 'notif-1',
|
||||
type: 'info',
|
||||
title: 'Bitcoin Core synced',
|
||||
message: 'Blockchain fully synced at block 892,451. IBD complete.',
|
||||
timestamp: new Date(Date.now() - 1800000).toISOString(),
|
||||
read: false,
|
||||
},
|
||||
{
|
||||
id: 'notif-2',
|
||||
type: 'success',
|
||||
title: 'LND channel opened',
|
||||
message: 'Channel opened with ACINQ (500,000 sats capacity). 6 confirmations received.',
|
||||
timestamp: new Date(Date.now() - 7200000).toISOString(),
|
||||
read: false,
|
||||
},
|
||||
{
|
||||
id: 'notif-3',
|
||||
type: 'warning',
|
||||
title: 'Disk usage above 80%',
|
||||
message: 'Storage at 82% capacity. Consider pruning old blockchain data or expanding storage.',
|
||||
timestamp: new Date(Date.now() - 14400000).toISOString(),
|
||||
read: true,
|
||||
},
|
||||
{
|
||||
id: 'notif-4',
|
||||
type: 'info',
|
||||
title: 'System update available',
|
||||
message: 'Archipelago v0.1.1 is available. Review changelog before updating.',
|
||||
timestamp: new Date(Date.now() - 86400000).toISOString(),
|
||||
read: true,
|
||||
},
|
||||
{
|
||||
id: 'notif-5',
|
||||
type: 'success',
|
||||
title: 'Fedimint guardian connected',
|
||||
message: 'Guardian consensus achieved. Mint is operational with 3/4 guardians online.',
|
||||
timestamp: new Date(Date.now() - 43200000).toISOString(),
|
||||
read: false,
|
||||
},
|
||||
],
|
||||
})
|
||||
}
|
||||
|
||||
// =====================================================================
|
||||
|
||||
Reference in New Issue
Block a user