Tree:
d64b5dd290
imwald
imwald-v0.58.10
imwald-v0.58.5
main
v0.1.0
v0.10.0
v0.10.1
v0.10.2
v0.10.3
v0.10.4
v0.10.5
v0.11.0
v0.11.1
v0.11.2
v0.11.3
v0.12.0
v0.12.1
v0.12.2
v0.12.3
v0.13.0
v0.13.1
v0.13.2
v0.14.0
v0.14.1
v0.14.2
v0.14.3
v0.14.4
v0.15.0
v0.16.0
v0.16.1
v0.16.2
v0.16.3
v0.17.0
v0.17.1
v0.17.10
v0.17.11
v0.17.12
v0.17.13
v0.17.14
v0.17.15
v0.17.16
v0.17.17
v0.17.18
v0.17.2
v0.17.3
v0.17.4
v0.17.5
v0.17.6
v0.17.7
v0.17.8
v0.17.9
v0.18.0
v0.19.0
v0.19.1
v0.19.10
v0.19.2
v0.19.3
v0.19.4
v0.19.5
v0.19.6
v0.19.7
v0.19.8
v0.19.9
v0.2.0
v0.2.1
v0.20.0
v0.20.1
v0.20.2
v0.20.3
v0.20.4
v0.20.5
v0.20.6
v0.21.0
v0.21.1
v0.21.2
v0.21.3
v0.21.4
v0.22.0
v0.23.0
v0.23.1
v0.23.3
v0.23.4
v0.24.0
v0.24.1
v0.24.2
v0.24.3
v0.24.4
v0.24.5
v0.24.6
v0.24.7
v0.25.0
v0.25.1
v0.25.3
v0.25.4
v0.25.5
v0.25.6
v0.25.7
v0.26.0
v0.26.1
v0.26.2
v0.26.3
v0.26.4
v0.27.0
v0.27.1
v0.27.2
v0.27.3
v0.27.4
v0.27.5
v0.27.6
v0.27.7
v0.27.8
v0.27.9
v0.28.0
v0.28.1
v0.28.3
v0.29.0
v0.29.1
v0.29.10
v0.29.11
v0.29.12
v0.29.13
v0.29.14
v0.29.15
v0.29.16
v0.29.17
v0.29.18
v0.29.19
v0.29.2
v0.29.20
v0.29.3
v0.29.4
v0.29.6
v0.29.7
v0.29.8
v0.29.9
v0.3.0
v0.3.1
v0.3.2
v0.30.0
v0.30.1
v0.30.2
v0.30.3
v0.31.0
v0.31.1
v0.31.1-bump
v0.31.10
v0.31.11
v0.31.2
v0.31.3
v0.31.4
v0.31.5
v0.31.6
v0.31.7
v0.31.8
v0.31.9
v0.32.0
v0.32.1
v0.32.2
v0.32.3
v0.32.4
v0.32.5
v0.32.6
v0.32.7
v0.33.0
v0.33.1
v0.34.0
v0.34.1
v0.34.2
v0.34.3
v0.34.4
v0.34.5
v0.34.6
v0.34.7
v0.35.0
v0.35.1
v0.35.2
v0.35.3
v0.35.4
v0.35.5
v0.36.0
v0.36.1
v0.36.10
v0.36.11
v0.36.12
v0.36.13
v0.36.14
v0.36.15
v0.36.16
v0.36.17
v0.36.18
v0.36.19
v0.36.2
v0.36.20
v0.36.21
v0.36.22
v0.36.23
v0.36.3
v0.36.4
v0.36.5
v0.36.6
v0.36.7
v0.36.8
v0.36.9
v0.37.0
v0.37.1
v0.37.2
v0.37.3
v0.38.0
v0.38.1
v0.39.0
v0.39.1
v0.39.2
v0.39.3
v0.39.4
v0.4.0
v0.4.1
v0.4.2
v0.4.3
v0.4.4
v0.4.5
v0.4.6
v0.4.9
v0.40.0
v0.40.1
v0.41.0
v0.42.0
v0.43.0
v0.43.1
v0.44.0
v0.44.1
v0.44.2
v0.44.3
v0.44.4
v0.44.5
v0.44.6
v0.44.7
v0.46.0
v0.46.1
v0.46.2
v0.47.0
v0.47.1
v0.48.1
v0.48.10
v0.48.11
v0.48.12
v0.48.13
v0.48.14
v0.48.15
v0.48.8
v0.48.9
v0.49.0
v0.49.1
v0.49.2
v0.50.0
v0.50.1
v0.51.0
v0.52.0
v0.52.1
v0.52.10
v0.52.11
v0.52.12
v0.52.17
v0.52.2
v0.52.3
v0.52.4
v0.52.5
v0.52.6
v0.52.7
v0.52.8
v0.52.9
v0.53.0
v0.53.1
v0.54.0
v0.55.0
v0.55.10
v0.55.11
v0.55.4
v0.55.5
v0.55.6
v0.56.0
v0.56.1
v0.56.2
v0.56.3
v0.56.4
v0.56.5
v0.56.6
v0.56.8
v0.56.9
v0.57.0
v0.57.1
v0.57.2
v0.58.0
v0.58.1
v0.58.2
v0.58.3
v0.58.4
v0.58.5
v0.6.0
v0.6.1
v0.6.2
v0.6.3
v0.6.4
v0.7.1
v0.8.0
v0.8.1
v0.8.2
v0.8.3
v0.8.4
v0.8.5
v0.8.6
v0.8.7
v0.8.8
v0.8.9
v0.9.0
v0.9.1
v0.9.2
v0.9.3
v4.1.0
${ noResults }
8 Commits (d64b5dd2900975d3a6840c7652c9c3478b103ce5)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
9ecea8713f
|
Add launcher dashboard service controls and NIP-86 advertisement
- Add start/stop/restart buttons for individual services in launcher UI - Show all available modules with categories (Database, ACL, Sync, Certs) - Add enable/disable toggles with mutual exclusivity for DB/ACL backends - Handle service dependencies when stopping (DB stops dependents first) - Advertise NIP-86 in NIP-11 when ACL mode is managed or curating - Add module descriptions showing API coverage Files modified: - app/handle-relayinfo.go: Add NIP-86 to supported NIPs for managed/curating modes - cmd/orly-launcher/server.go: Add start-service/stop-service endpoints, ProcessStatus fields - cmd/orly-launcher/supervisor.go: Add StartService, StopService with dependency handling - cmd/orly-launcher/web/src/api.js: Add startService, stopService API functions - cmd/orly-launcher/web/src/components/ProcessCard.svelte: Add toggles, categories, action buttons - cmd/orly-launcher/web/src/pages/Dashboard.svelte: Add service control handlers - pkg/version/version: Bump to v0.56.9 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
c1713f42ef
|
Add launcher service control and fix release URLs (v0.56.2)
- Add ServicesEnabled config to run admin UI without starting services - Add start/stop services API endpoints and dashboard controls - Add IsRunning() method to supervisor for service state tracking - Fix release download URLs to use git.nostrdev.com instead of git.mleku.dev - Change Makefile to use go install (except main relay uses go build for name) - Add orly-certs DNS-01 wildcard certificate manager - Remove libsecp256k1.so from repo (runtime dependency only) Files modified: - cmd/orly-launcher/config.go: Add ServicesEnabled option - cmd/orly-launcher/main.go: Skip services when disabled, update help - cmd/orly-launcher/server.go: Add start/stop endpoints, fix tags API URL - cmd/orly-launcher/supervisor.go: Add IsRunning(), allow restart after stop - cmd/orly-launcher/web/src/api.js: Add startServices/stopServices functions - cmd/orly-launcher/web/src/pages/Dashboard.svelte: Add start/stop buttons - cmd/orly-launcher/web/src/pages/Update.svelte: Fix release base URL - cmd/orly-certs/: New DNS-01 certificate manager - Makefile: Use go install, keep go build for main relay - pkg/version/version: Bump to v0.56.2 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
14b691998f
|
Add editable configuration UI for orly-launcher (v0.56.0)
- Add JSON config file persistence (~/.config/orly/launcher.json) - Implement POST /api/config endpoint for saving configuration - Make Config.svelte fully editable with edit/save/cancel buttons - Add config file loading with env var override support - Fix embedded web UI serving (direct file serving instead of http.FileServer) - Add restart button after config save for applying changes Files modified: - cmd/orly-launcher/config.go: Add ConfigFile type, load/save functions - cmd/orly-launcher/server.go: Implement handleSetConfig endpoint - cmd/orly-launcher/web.go: Fix file serving without redirects - cmd/orly-launcher/web/src/api.js: Add saveConfig function - cmd/orly-launcher/web/src/pages/Config.svelte: Full edit mode support - pkg/version/version: Bump to v0.56.0 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
3ef1ce9a3a
|
Add admin web UI to orly-launcher with NIP-98 authentication
- Add embedded Svelte admin web UI for process monitoring and control - Implement NIP-98 HTTP authentication middleware for secure API access - Add binary update/rollback system with versioned symlinks - Add admin API endpoints: status, config, binaries, update, restart, rollback - Update CI workflow to build all binaries for AMD64 and ARM64 architectures - Add launcher-web Makefile target for building admin UI separately Files modified: - .gitea/workflows/go.yml: Build all binaries and launcher admin UI - Makefile: Add launcher-web and orly-launcher-no-web targets - cmd/orly-launcher/auth.go: NIP-98 authentication middleware - cmd/orly-launcher/config.go: Admin UI configuration (port, owners) - cmd/orly-launcher/main.go: Start admin server, updated help text - cmd/orly-launcher/server.go: Admin HTTP server with API endpoints - cmd/orly-launcher/supervisor.go: GetProcessStatuses, RestartAll methods - cmd/orly-launcher/updater.go: Binary version management with symlinks - cmd/orly-launcher/web.go: Embedded admin UI serving - cmd/orly-launcher/web/: Svelte admin UI (dashboard, config, update pages) - pkg/version/version: Bump to v0.55.11 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
8be48ef8cc
|
Fix ACL startup timing and launcher ready check (v0.55.2)
- ACL: Mark service ready immediately after gRPC server starts - ACL: Run Configure() in background goroutine (follow list loading) - Launcher: Actually call gRPC Ready() endpoint instead of just TCP port check - Launcher: Increase ACL ready timeout from 30s to 120s as fallback This fixes the issue where relay would timeout waiting for ACL because the launcher only checked if the TCP port was open, but the ACL service's Ready() was returning false until Configure() completed (which takes minutes for large follow lists). Now ACL marks itself ready immediately so the relay can start while follow lists continue loading in the background. Files modified: - cmd/orly-acl/main.go: Restructure startup to be async - cmd/orly-launcher/config.go: Increase ACL timeout to 120s - cmd/orly-launcher/supervisor.go: Add gRPC Ready() check - pkg/version/version: Bump to v0.55.2 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
769f9d2daa
|
Add IPC sync services and NIP-77 negentropy synchronization (v0.55.0)
- Add four independent gRPC sync service binaries: - orly-sync-distributed: Serial-based peer-to-peer sync - orly-sync-cluster: Cluster replication with persistent state - orly-sync-relaygroup: Relay group config discovery (Kind 39105) - orly-sync-negentropy: NIP-77 efficient set reconciliation - Implement NIP-77 negentropy protocol for relay-to-relay sync - Add push-based event transfer for negentropy sync - Add client-facing NIP-77 WebSocket support (NEG-OPEN/MSG/CLOSE) - Add deployment scripts with symlink-based versioning - Add Makefile targets for quick deployment and rollback - Refactor existing sync code into modular service packages - Add proto definitions for all sync services - Integrate negentropy service into orly-launcher supervisor - Advertise NIP-77 support in relay info document Files modified: - Makefile: Add sync service build targets and deployment commands - README.md: Document NIP-77 support - app/config/config.go: Add negentropy configuration options - app/handle-message.go: Route NEG-* envelopes to negentropy handler - app/handle-negentropy.go: New file for NIP-77 WebSocket handling - app/handle-relayinfo.go: Advertise NIP-77 support - cmd/orly-launcher/: Add negentropy service management - cmd/orly-sync-*/: New service binaries - main.go: Add negentropy gRPC client initialization - pkg/proto/orlysync/: New proto definitions and generated code - pkg/sync/*/: Refactored sync packages with gRPC services - scripts/deploy-orly.sh: New symlink-based deployment script - scripts/build-and-deploy.sh: New build and deploy workflow Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
e20920d39b
|
Add split database and ACL binaries for modular deployment (v0.54.0)
- Split orly-db into orly-db-badger and orly-db-neo4j backends - Split orly-acl into orly-acl-follows, orly-acl-managed, orly-acl-curation - Add shared pkg/database/server/ for gRPC database service - Add shared pkg/acl/server/ for gRPC ACL service - Add pkg/acl/grpc/ client for relay-to-ACL communication - Add gRPC proto definitions for ACL service (pkg/proto/orlyacl/) - Update launcher to compute binary names from backend/mode settings - When ACL disabled, relay runs in open mode (no restrictions) - Add Makefile with all-split, arm64-split, and per-binary targets - Include systemd service file for split IPC deployment Files modified: - Makefile: New build system with split binary targets - app/config/config.go: Add ACL gRPC client config options - cmd/orly-acl/: Legacy monolithic ACL server - cmd/orly-acl-curation/main.go: Curation mode binary - cmd/orly-acl-follows/main.go: Follows mode binary - cmd/orly-acl-managed/main.go: Managed mode binary - cmd/orly-db-badger/main.go: Badger backend binary - cmd/orly-db-neo4j/main.go: Neo4j backend binary - cmd/orly-launcher/config.go: Add DBBackend, compute binary names - cmd/orly-launcher/supervisor.go: Handle no-ACL mode, add ACL health check - main.go: Add gRPC ACL client initialization - orly.service: Systemd service for split IPC mode - pkg/acl/acl.go: Add gRPC ACL interface type - pkg/acl/grpc/client.go: gRPC ACL client implementation - pkg/acl/server/: Shared ACL gRPC server package - pkg/database/server/: Shared database gRPC server package - pkg/proto/orlyacl/: ACL service protobuf definitions - pkg/version/version: v0.54.0 - proto/orlyacl/: ACL proto source files Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |
|
|
34ab56815e
|
Add database IPC split mode and blob storage abstraction (v0.53.0)
Major refactoring to support running the database as a separate gRPC service: - Add gRPC database server (cmd/orly-db/) and launcher (cmd/orly-launcher/) - Add proto definitions for all database operations (proto/orlydb/v1/) - Add gRPC client implementing database.Database interface - Abstract Blossom blob storage into database interface (9 methods) - Remove BBolt database backend (pkg/bbolt/ deleted) - Hide Blossom tab in UI when blob storage unavailable - Update documentation for new architecture Database backends: badger (default), neo4j, wasmdb, grpc Files modified: - cmd/orly-db/: New gRPC database server - cmd/orly-launcher/: Process supervisor for split mode - proto/orlydb/v1/: Protocol buffer definitions - pkg/database/grpc/: gRPC client implementation - pkg/database/blob.go: Badger blob storage implementation - pkg/database/interface.go: Added blob storage methods - pkg/database/types.go: Added BlobMetadata, BlobDescriptor types - pkg/database/factory.go: Removed BBolt, added gRPC backend - pkg/neo4j/blob.go: Blob storage stubs - pkg/wasmdb/blob.go: Blob storage stubs - pkg/blossom/: Refactored to use database.Database interface - app/config/config.go: Removed BBolt config, added gRPC settings - CLAUDE.md: Updated documentation Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
4 months ago |