-
v0.3.19 Stable
released this
2026-07-15 14:05:30 +01:00 | 154 commits to main since this release0.3.19 test build (ADR-N011 hands-on-validation exception): unblocks type-to-create by relaxing library_rev NOT NULL on all five library.sqlite vocab tables via new migration 004. Additive schema-only; other 0.3.17/0.3.18 code paths unchanged. Verified pre/post migration by execution.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.19-windows-x86_64-setup.exe
0 downloads ·
2026-07-15 14:05:33 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.18 Stable
released this
2026-07-15 01:32:46 +01:00 | 156 commits to main since this releaseTest build (0.3.18): Projects/Home per-row Delete (ADR-N030, additive-only). Confirm dialog: Cancel / Remove from list (keeps .lnetwork folder) / Delete project and local files (irreversible fs::remove_dir_all, guarded by .lnetwork extension + is_dir). Full folder path shown for the destructive option. Currently-open project is deactivated first (assets scope revoked, active state + ghost report cleared). Stale-entry tolerant (missing folder → recent-list cleanup only). Backend + library.sqlite untouched. 0.3.17 items (ADR-N029 structural repair + rename-422 + form-spacing) unchanged. Rust 34/34, TS+Vite clean.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.18-windows-x86_64-setup.exe
0 downloads ·
2026-07-15 01:32:48 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.17 Stable
released this
2026-07-14 23:41:46 +01:00 | 157 commits to main since this releaseTest build (0.3.17): STRUCTURAL VOCABULARY REPAIR (ADR-N029) + two follow-ups. (a) Single id authority: client mints UUID on type-to-create, push carries it, backend adopts verbatim. (b) library.sqlite is the sole store for the five vocabularies + presets; project.sqlite drops per-project vocab tables (migration 008). (c) Devices/ports reference library values by id; display resolves id→label. (d) No client seed — first sync pulls backend ids as-is. (e) Rename returns 200 (was HTTP 422): new snake_case wire body with skip_serializing_if=None. (f) Form-label spacing pattern via label:has(> span + input) in App.css — applies app-wide, no wrapper class. Ghost check: id absent from library = ghost, one id space so no false positives from seed/push id mismatches. Backend redeployed for id-adoption; live push+read verified same id. No data migration — operator deleting all existing projects. Rust 34/34, backend pytest 16/16, TS+Vite clean.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.17-windows-x86_64-setup.exe
0 downloads ·
2026-07-14 23:41:49 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.16 Stable
released this
2026-07-14 20:48:21 +01:00 | 161 commits to main since this releaseTest build (0.3.16): four admin-editor fixes (ADR-N028 addendum). (1) library_admin_list_backend now runs the full sync pipeline (fetch→upsert→propagate→ghosts) so admin mutations reach project pickers + ghost cache without a manual re-sync. (2) list_all cross-references library.sqlite and hides source='library' project rows whose backend twin is gone. (3) rename PATCH body uses snake_case + skip_serializing_if=None (fixes HTTP 422 extra_forbidden). (4) form spacing pattern: shared label:has(>span+input) rule. (5) removed mTLS explainer from Backend Library UI. 42 Rust + 16 backend pytest all green.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.16-windows-x86_64-setup.exe
0 downloads ·
2026-07-14 20:48:24 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.15 Stable
released this
2026-07-14 15:25:41 +01:00 | 163 commits to main since this releaseTest build (0.3.15): backend Library admin editor + ghost reconciliation (ADR-N028). Second auth layer on top of mTLS — admin login gates destructive edits (rename, delete) to /library/*; argon2id hashed, ships with admin/admin (rotate on next build). New endpoints /library/admin/login|change-password|vocab/{kind}/{id}|presets/{id}; unauthenticated call → 401. Client: Settings gains Backend Library section (login → live catalogue → rename+delete+change-pw), Devices renders ghosts (red field + !N badge) when a referenced backend value has been removed by the admin; ghost state is never persisted, always live-reconciled on sync/open. Rename with same id propagates the corrected text to project.devices.brand/model/device_type on next load. 16 new backend pytest + Rust cargo test all green.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.15-windows-x86_64-setup.exe
0 downloads ·
2026-07-14 15:25:44 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.14 Stable
released this
2026-07-14 13:02:14 +01:00 | 165 commits to main since this releaseTest build (0.3.14): device-delete now cleans up uncommitted vocab it introduced (ADR-N027). On delete_device: reads brand/model/device_type + ports.media_type_id/signal_type_id BEFORE delete; deletes device (cascades); for each referenced vocab value, if no other device references it, calls the existing delete_one — which self-gates on pushed_at (hard DELETE if NULL, no-op if committed). Fixes: typo brand/model/device_type/media/signal added inside the Create Device dialog no longer orphans in the project's lookup tables when the operator deletes the device before navigating — the next NavLink flush therefore has nothing to push. Committed values (already in the library) stay per spec; values another device still references stay per spec. 8 new Rust acceptance tests (42 total).
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.14-windows-x86_64-setup.exe
0 downloads ·
2026-07-14 13:02:16 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.13 Stable
released this
2026-07-14 01:08:13 +01:00 | 167 commits to main since this releaseTest build (0.3.13): flush bound to user clicks (not hooks); hidden_at concept ripped out. Diagnosis before code: every prior 'detect nav via useEffect side-effect on a computed hook value' approach was fragile — ambient App re-renders (setActive after startup refresh, setUpdate when checkForUpdate resolves) cascade through useMemo(router) recreation and RouterProvider tree remount; useLocation can transit through intermediate pathname values during that transition, tripping any side-effect-inferred navigation detector. Fix: NavLink onClick fires flush; ProjectsHome's programmatic navigate() calls wrapped. Rust delete_one is now hard-DELETE when pushed_at IS NULL, no-op when pushed. hidden_at column left on disk but never referenced.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.13-windows-x86_64-setup.exe
0 downloads ·
2026-07-14 01:11:54 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.12 Stable
released this
2026-07-13 23:48:09 +01:00 | 168 commits to main since this releaseTest build (0.3.12): vocabulary delete + premature-push fix. Diagnosis before code: (a) AppShell's flush useEffect fires on MOUNT, and the router in App.tsx was recreated on every App re-render (createHashRouter called inline in the function body) — ambient App-level state changes remounted RouterProvider → AppShell → flush fired mid-tab. (b) delete_one was a hard DELETE regardless of push state; a pushed value's delete should soft-detach. Fixes: module-level g_lastFlushPathname survives remounts + useMemo on the router; migration 007 adds hidden_at; delete_one is two-mode (hard delete when pushed_at IS NULL, soft hide otherwise); list_all filters WHERE hidden_at IS NULL; upsert_one ON CONFLICT clears hidden_at so type-to-create re-selects.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.12-windows-x86_64-setup.exe
0 downloads ·
2026-07-13 23:51:45 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.11 Stable
released this
2026-07-13 22:12:47 +01:00 | 169 commits to main since this releaseTest build (0.3.11): sync fix — /library push endpoint is finally called by the client. Vocabulary created in project A now propagates to project B without waiting for an app restart. Diagnosis before code: POST /library/catalogue/entries had no client caller; type-to-create wrote locally only; there was no library→project bridge. Fix: migration 006 (pushed_at column), new LibraryProvider::push_vocab + real MtlsHttpProvider impl, new src/library/bridge.rs with flush_project_pushes + propagate_library_to_project, new flush_library_pushes IPC. FE fires flush on tab change / project close / window close. open_project runs sync + propagate (pull-on-open). Site octet is now editable on Network / VLANs too (bidirectional, one singleton).
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.11-windows-x86_64-setup.exe
0 downloads ·
2026-07-13 22:21:52 +01:00 · 5 MiB
-
Source code (ZIP)
-
v0.3.10 Stable
released this
2026-07-13 20:07:42 +01:00 | 170 commits to main since this releaseTest build (0.3.10): Pile B — cross-project shared data spine. Backend /library FastAPI on loud-proxy behind existing mTLS gate (ADR-N021 mirrors loud-patch pattern). Five vocabularies + presets + VLAN role scheme sync from net.loud-dxb.ae/library/catalogue (ADR-N022). Signal-type seed corrected — KINDS not instances; M/F+pin variants only on XLR and DMX (ADR-N023). Pre-migration project backup wired (ADR-N024). CAPTURE-ONLY tables provisioned: site_octet, subnets_farm, companies + company_branding (ADR-N025). FE: VLAN role picker on Network, site octet on Project Dashboard, Companies capture screen. Critical non-goal held: no prefix-width cap.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Loud-Network-0.3.10-windows-x86_64-setup.exe
0 downloads ·
2026-07-13 20:11:17 +01:00 · 5 MiB
-
Source code (ZIP)