Snider
016c2bd9c6
Merge remote-tracking branch 'homelab/dev' into dev
2026-04-24 06:02:26 +01:00
Snider
09432017ef
fix(display): race-safe WSEventManager.broadcaster eventBuffer read
...
Guard eventBuffer access under RLock inside broadcaster() so a
concurrent buffer swap can't trip a nil-ref crash.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-24 06:02:26 +01:00
Snider
6e62d4a20c
feat(lifecycle): add AppMode type + DetectMode()
...
Security Scan / security (push) Has been cancelled
Test / test (push) Has been cancelled
New pkg/lifecycle/mode.go introduces AppMode (Manager | Worker) and
DetectMode() that returns:
- Manager by default (explicit or empty env)
- Worker when CORE_APP_MODE=worker, or when empty env + CI=true signals
a headless/compute context
Prerequisite for the BugSETI compute worker pattern (core/gui RFC.md §9.1) —
manager GUI runs the full app UI, workers run headless compute with only an
RPC surface.
Tests follow the core/go {Good,Bad,Ugly} naming convention; go test
./pkg/lifecycle/... passes.
Co-authored-by: Codex <noreply@openai.com>
Closes tasks.lthn.sh/view.php?id=32
2026-04-23 13:12:12 +01:00
Snider
49198acd3a
feat(gui): gpt-5.4-mini/mature pass 4
...
- `dev` now points at `db535805a179ef11a012ff34994036ede2cb150d`
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-23 13:12:12 +01:00
Snider
12ad42555c
feat(gui): gpt-5.4-mini/mature pass 3
...
Constraint:
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-23 13:12:12 +01:00
Snider
9713264c91
feat(gui): gpt-5.4-mini/mature pass 5
...
Verification:
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-18 08:55:28 +01:00
Snider
6a4edb0090
Harden layout persistence path handling
Security Scan / security (push) Has been cancelled
Test / test (push) Has been cancelled
2026-04-18 08:55:14 +01:00
Snider
2066965451
feat(gui): gpt-5.4-mini/mature pass 4
...
- `dev` now points at `db535805a179ef11a012ff34994036ede2cb150d`
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-18 08:49:20 +01:00
Snider
db535805a1
Harden window state path configuration
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-18 08:49:04 +01:00
Snider
a8d56f0158
feat(gui): gpt-5.4-mini/mature pass 3
...
Constraint:
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-18 08:42:23 +01:00
Snider
5437487b3a
feat(gui): gpt-5.4-mini/mature pass 2
...
- Verified with `go test ./...`.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-18 08:37:00 +01:00
Snider
1705e6ef57
Harden websocket nil handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-18 08:36:49 +01:00
Snider
93fc3cc179
feat(gui): gpt-5.4-mini/mature pass 1
...
- `a39edfde` `Harden stub manager nil receivers`
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-18 08:32:59 +01:00
Snider
a39edfde83
Harden stub manager nil receivers
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-18 08:32:45 +01:00
Snider
6f9285a48d
Harden menu builder against nil handles
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 21:02:34 +01:00
Snider
99cfa72fa1
Harden nil event handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 21:01:05 +01:00
Snider
4329b18b36
Harden Wails stub window geometry defaults
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:59:30 +01:00
Snider
adbd44f317
Harden Wails stub window manager nil handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:57:28 +01:00
Snider
917930e7eb
Harden context menu MCP JSON bridge
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:54:37 +01:00
Snider
0b20658612
Harden menu nil handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:53:14 +01:00
Snider
127ece75dd
Harden preload origin trust
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:50:24 +01:00
Snider
7a9a96c0a0
Tighten WebSocket origin checks
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:44:20 +01:00
Snider
07c65655fe
Harden manifest path resolution
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:42:37 +01:00
Snider
90d7bfd9a4
Harden websocket and marketplace failure paths
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:38:57 +01:00
Snider
85dc7849b2
Add missing Wails application stub tests
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:37:07 +01:00
Snider
d47d143201
Harden sidecar auto-start fallback
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:33:56 +01:00
Snider
f5821a64e5
Harden websocket numeric field validation
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:32:24 +01:00
Snider
b2b28e1fe5
Harden manifest cache access
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:29:26 +01:00
Snider
18437891e7
fix(display): initialize p2p bridge after events
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:27:05 +01:00
Snider
9eb87cdc68
Harden p2p bridge cleanup
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:12:18 +01:00
Snider
17fd6e9cdf
Harden P2P publish fan-out
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:09:38 +01:00
Snider
5e2a49002e
Harden sidecar startup failure handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:07:19 +01:00
Snider
6931d9d2b6
Harden display and MCP menu failures
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:05:33 +01:00
Snider
f5cee5adaf
Harden context menu nil backend paths
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:01:58 +01:00
Snider
4365248c86
Harden screen state boundaries
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 20:00:27 +01:00
Snider
69e1fbe7e3
Validate websocket layout numeric fields
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:52:26 +01:00
Snider
7301932257
Harden environment file manager path handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:49:52 +01:00
Snider
fb43e9a729
Add display wrapper coverage
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:47:15 +01:00
Snider
86d0a5d525
Add display API coverage
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:42:52 +01:00
Snider
dca4842c94
Harden context menu rollback handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:36:08 +01:00
Snider
463fa72c30
Harden stub callback dispatch
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:33:54 +01:00
Snider
8fd4da836f
Fix display storage error wrappers
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:31:10 +01:00
Snider
bd1063a102
Harden display API return semantics
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:21:53 +01:00
Snider
908eab58b6
Harden events service nil platform handling
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:18:53 +01:00
Snider
e4454bc707
Harden wails application stubs
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:16:44 +01:00
Snider
e67fa32827
Harden Wails application stubs
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:13:49 +01:00
Snider
7efba121a9
Harden websocket handler nil-safety
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:10:24 +01:00
Snider
8174d1c481
Harden display window service nil safety
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:07:51 +01:00
Snider
f1ccbf4270
Harden storage store initialization
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 19:05:15 +01:00
Snider
345afb16bb
Add Wails stub bridge coverage
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-17 18:58:23 +01:00