-
be1913849e
feat: style device select dropdown for new session dialog
Brian Krabach
2026-04-04 08:16:33 -07:00
-
44e47c5228
feat: route createNewSession through federation proxy for remote devices
Brian Krabach
2026-04-04 08:09:02 -07:00
-
c28cb0a7f9
feat: add device select to mobile FAB session input
Brian Krabach
2026-04-04 07:59:43 -07:00
-
e12a965cdf
feat: add device select dropdown to showNewSessionInput
Brian Krabach
2026-04-04 07:51:21 -07:00
-
97f59fda84
feat: add POST /api/federation/{remote_id}/sessions proxy endpoint
Brian Krabach
2026-04-04 07:43:18 -07:00
-
02f1e23f35
style: auto-format test_frontend_js.py with ruff
Brian Krabach
2026-04-04 07:11:04 -07:00
-
094ccd7d81
feat: fire bell-clear POST when opening remote sessions
Brian Krabach
2026-04-04 07:06:53 -07:00
-
be7663ca57
feat: use sessionKey for bell comparison in pill badges
Brian Krabach
2026-04-04 06:58:31 -07:00
-
6ee6112744
feat: add federation bell/clear proxy endpoint
Brian Krabach
2026-04-04 06:52:22 -07:00
-
5f9d6a593e
feat: add POST /api/sessions/{name}/bell/clear endpoint
Brian Krabach
2026-04-04 06:46:31 -07:00
-
42142c0954
feat: inject sessionKey for remote federation sessions
Brian Krabach
2026-04-04 06:36:24 -07:00
-
28aaf3d484
fix: restore favicon activity badge + add activity count and hostname to page title
Brian Krabach
2026-04-04 06:21:13 -07:00
-
c92689dab2
feat: TLS nudge in doctor and service install output
Brian Krabach
2026-04-04 03:40:44 -07:00
-
7db56e600f
docs: TLS nudge design — contextual hints in doctor + service install
Brian Krabach
2026-04-04 03:29:36 -07:00
-
cb2d425fa7
fix: Tailscale detection reads DNSName from Self + suppress cryptography deprecation
Brian Krabach
2026-04-04 03:07:13 -07:00
-
ddba3baeb1
fix: add cryptography to pyproject.toml dependencies
Brian Krabach
2026-04-04 02:40:19 -07:00
-
4483d879c6
test: fix misleading docstrings and tighten detection-priority assertion in test_readme.py
Brian Krabach
2026-04-03 23:52:53 -07:00
-
1b92340975
docs: update README with complete Phase 2 TLS documentation
Brian Krabach
2026-04-03 23:45:25 -07:00
-
a4d6e7a348
test: add test_generate_mkcert_includes_tailscale_sans integration test
Brian Krabach
2026-04-03 23:36:46 -07:00
-
aa1dadf834
feat: add existing cert detection and regenerate prompt to setup-tls
Brian Krabach
2026-04-03 23:28:59 -07:00
-
52d0021f06
feat: add setup_tls_status() and --status flag to setup-tls subcommand
Brian Krabach
2026-04-03 23:21:05 -07:00
-
3bba2d44e2
feat: auto-detection chain in setup_tls() — Tailscale → mkcert → self-signed
Brian Krabach
2026-04-03 23:13:50 -07:00
-
708dffe20e
feat: add detect_mkcert() and generate_mkcert() for locally-trusted CA certificates
Brian Krabach
2026-04-03 23:03:56 -07:00
-
33b9ebb392
feat: add generate_tailscale() for Tailscale cert generation
Brian Krabach
2026-04-03 22:56:45 -07:00
-
1e20d5b131
feat: add detect_tailscale() to tls.py with 4 tests (task-1-tailscale-detection)
Brian Krabach
2026-04-03 22:51:34 -07:00
-
adddc68758
docs: add TLS setup section to README
Brian Krabach
2026-04-03 22:22:44 -07:00
-
b51463a5c4
test: code quality fixes — docstring count, ruff format, test name accuracy
Brian Krabach
2026-04-03 22:18:30 -07:00
-
c2c916077e
test: add edge case tests for TLS certificate generation and SSL serve behavior
Brian Krabach
2026-04-03 22:13:39 -07:00
-
fad9c10bbb
feat: add TLS status section to doctor() command output
Brian Krabach
2026-04-03 22:07:56 -07:00
-
41a3adbf53
feat: add setup-tls subcommand for TLS certificate configuration
Brian Krabach
2026-04-03 22:00:02 -07:00
-
f6316f029d
test: add TLS CLI flag tests for task-3-cli-flags
Brian Krabach
2026-04-03 21:54:00 -07:00
-
4ea28d7e1c
feat: update serve() to accept and pass TLS SSL params to uvicorn
Brian Krabach
2026-04-03 21:47:35 -07:00
-
89f39b2366
fix: use compat getattr for not_valid_after/before_utc to support cryptography v41
Brian Krabach
2026-04-03 21:39:03 -07:00
-
4cca6d1c82
feat: add muxplex.tls module with self-signed cert generation and inspection
Brian Krabach
2026-04-03 21:36:38 -07:00
-
3a8673690c
feat: add tls_cert and tls_key to DEFAULT_SETTINGS
Brian Krabach
2026-04-03 21:30:50 -07:00
-
7b10c61327
docs: TLS setup implementation plans (Phase 1 foundation + Phase 2 auto-detection)
Brian Krabach
2026-04-03 21:19:17 -07:00
-
1ffffc8d26
docs: add HTTPS/TLS setup design
Brian Krabach
2026-04-03 19:38:09 -07:00
-
834783dec3
fix: manifest.json path, deprecated meta tag, minor code style
Brian Krabach
2026-04-03 06:03:21 -07:00
-
92a7d63ff5
docs: add federation_key to README settings table + commit CLI plan files
Brian Krabach
2026-04-03 05:52:25 -07:00
-
082d03036f
fix: preserve federation keys when PATCH sends redacted empty values
Brian Krabach
2026-04-02 20:20:32 -07:00
-
b0c1d0ab8d
fix: remoteId=0 treated as falsy — use null checks instead of || for integer remoteId
Brian Krabach
2026-04-02 04:46:50 -07:00
-
000c71c40d
fix: prevent service crash-loop on port-in-use at startup
Brian Krabach
2026-04-02 00:51:20 -07:00
-
b310b7f8a6
fix: self-host xterm.js vendor libs — eliminates Edge Tracking Prevention console noise
Brian Krabach
2026-04-01 20:40:14 -07:00
-
463cbf4cb3
fix: federation remoteId must be integer index, not URL string
Brian Krabach
2026-04-01 20:22:45 -07:00
-
a07e5b5383
merge: integrate upstream (clipboard, URL click, search addon, delete fixes) with federation proxy rewrite
Brian Krabach
2026-04-01 18:55:54 -07:00
-
-
e4ba201cd2
refactor: use module-level socket import in _ttyd_is_listening
Brian Krabach
2026-04-01 18:34:12 -07:00
-
dae5cea16b
chore: remove unused websockets.exceptions import, add .gitignore, untrack __pycache__
Brian Krabach
2026-04-01 18:30:10 -07:00
-
e738701cdd
chore: final Phase 2 cleanup — remove stale references and unused imports
Brian Krabach
2026-04-01 18:17:55 -07:00
-
ebbf03118b
fix: reorganize settings tabs — merge notifications into sessions, move device-name to display, remove view-scope
Brian Krabach
2026-04-01 18:02:07 -07:00
-
805d3d7898
fix: restore notifications tab and revert out-of-scope settings dialog reorganization
Brian Krabach
2026-04-01 17:50:16 -07:00
-
9f51d1bd51
fix: reorganize settings dialog — remove notifications tab, move bell/device-name fields
Brian Krabach
2026-04-01 17:40:05 -07:00
-
046d123149
refactor: remove all cross-origin browser-direct federation code
Brian Krabach
2026-04-01 17:30:18 -07:00
-
c48456a14a
fix: include .settings-remote-key in remote instance debounced input selector
Brian Krabach
2026-04-01 17:08:14 -07:00
-
4ccaaf153e
fix: parse JSON response in federation generate-key handler
Brian Krabach
2026-04-01 16:57:15 -07:00
-
63e7ef2a1c
feat: federation key management UI in Settings > Multi-Device
Brian Krabach
2026-04-01 16:50:01 -07:00
-
77e2b8476b
fix: revert sidebar to single-line header (name + badge + ×)
Brian Krabach
2026-04-01 16:36:56 -07:00
-
c5df6511c1
style: fix stale comment, merge split tile-meta CSS block, clarify test variable
Brian Krabach
2026-04-01 16:29:33 -07:00
-
f18caf5d27
fix: move device badge inside tile-meta to prevent × overlap
Brian Krabach
2026-04-01 16:21:57 -07:00
-
adb0f8c39c
feat: upgrade xterm-addon-image 0.5.0 → @xterm/addon-image 0.9.0
Brian Krabach
2026-04-01 16:18:58 -07:00
-
d7bcf49283
fix: use var(--border) for default left border on tiles and sidebar items
Brian Krabach
2026-04-01 16:12:23 -07:00
-
d7d40f1f0d
refactor: remove sourceUrl property from session objects
Brian Krabach
2026-04-01 16:04:53 -07:00
-
b7cf45c621
test: add dedicated unit tests for buildStatusTileHTML
Brian Krabach
2026-04-01 15:56:27 -07:00
-
84b277854b
refactor: remove _sources state and buildSources/tagSessions/mergeSources
Brian Krabach
2026-04-01 15:43:51 -07:00
-
7132587847
feat: add search (Ctrl+F) and image rendering (Sixel/Kitty) addons
Brian Krabach
2026-04-01 14:59:43 -07:00
-
235b4aadfe
fix: guard negative remote_id in federation_connect endpoint
Brian Krabach
2026-04-01 14:38:09 -07:00
-
2c30ad39a2
feat: clickable URLs in terminal — Ctrl/Cmd+Click opens in new tab
Brian Krabach
2026-04-01 14:34:18 -07:00
-
745e58bae6
style: add 503 warning log and regroup 502 test with federation_connect suite
Brian Krabach
2026-04-01 14:33:27 -07:00
-
b1639826ab
fix: improve fetch_remote error handling and diagnostics
Brian Krabach
2026-04-01 14:22:29 -07:00
-
489a127056
refactor: defensive getattr guard and clarified cleanup comment in lifespan
Brian Krabach
2026-04-01 14:13:45 -07:00
-
43cc75efc8
test: add dispatch test for generate-federation-key subcommand
Brian Krabach
2026-04-01 14:03:07 -07:00
-
939a20e8b5
fix: migrate test_app.mjs sourceUrl tests to remoteId API
Brian Krabach
2026-04-01 13:35:26 -07:00
-
38300fcf79
feat: route remote terminal connections through federation proxy
Brian Krabach
2026-04-01 13:18:10 -07:00
-
7e28438953
fix: update pollSessions JSDoc and remove zombie backoff test
Brian Krabach
2026-04-01 13:08:31 -07:00
-
dc7c077b6a
test: remove stale multi-source pollSessions tests superseded by task-16
Brian Krabach
2026-04-01 13:01:09 -07:00
-
2de19bd988
fix: clean exit on Ctrl+C in muxplex service logs
Brian Krabach
2026-04-01 13:00:00 -07:00
-
442cfcc051
feat: simplify pollSessions to use federation proxy endpoint
Brian Krabach
2026-04-01 12:54:08 -07:00
-
bdb3f069e5
fix: delete active session returns to dashboard, sidebar/tile delete doesn't navigate
Brian Krabach
2026-04-01 12:48:38 -07:00
-
0e3ed96c16
refactor: drop unused css=None parameters in 3 CSS test functions
Brian Krabach
2026-04-01 12:48:00 -07:00
-
56694fde61
style: add debug logging to ws relay exceptions; format test_frontend_css
Brian Krabach
2026-04-01 12:44:31 -07:00
-
2dda544893
chore: remove untracked planning doc swept up in phase 1 commit
Brian Krabach
2026-04-01 12:37:53 -07:00
-
d0fe9cda67
chore: Phase 1 complete — all backend proxy tests pass
Brian Krabach
2026-04-01 12:33:17 -07:00
-
e726ef9926
feat: redact federation/remote keys from GET /api/settings
Brian Krabach
2026-04-01 12:19:24 -07:00
-
7e8892c926
feat: add POST /api/federation/generate-key endpoint
Brian Krabach
2026-04-01 12:12:37 -07:00
-
a2763e26f6
fix: add HTTP error handling to federation_connect endpoint
Brian Krabach
2026-04-01 12:07:57 -07:00
-
e420b84b9f
feat: add POST /api/federation/{remote_id}/connect proxy
Brian Krabach
2026-04-01 11:54:40 -07:00
-
536b487f52
refactor: extract _ws_auth_check helper and fix URL scheme conversion
Brian Krabach
2026-04-01 11:49:08 -07:00
-
086ef19aa4
feat: add WS /federation/{remote_id}/terminal/ws proxy endpoint
Brian Krabach
2026-04-01 11:42:19 -07:00
-
2dad066a5e
style: move import hmac to module-level per PEP 8
Brian Krabach
2026-04-01 11:37:55 -07:00
-
d07800c8c5
feat: add Bearer token auth to WebSocket proxy for federation
Brian Krabach
2026-04-01 11:32:17 -07:00
-
4e23935b94
chore: add pyrightconfig.json to resolve Pyright venv path
Brian Krabach
2026-04-01 11:27:36 -07:00
-
5f0fcf3e71
test: add True-path coverage and clean up TestClient binding for instance-info
Brian Krabach
2026-04-01 11:23:04 -07:00
-
98d552557a
fix: delete command auto-confirms prompts + add request-level logging
Brian Krabach
2026-04-01 11:18:57 -07:00
-
b4f29dacd0
fix: clean up pre-existing lint in test_api.py and document per-request key read
Brian Krabach
2026-04-01 11:17:42 -07:00
-
e1b0b55bc8
feat: add federation_enabled to instance-info endpoint
Brian Krabach
2026-04-01 11:10:07 -07:00
-
8609cf7880
feat: add GET /api/federation/sessions proxy endpoint
Brian Krabach
2026-04-01 10:58:42 -07:00
-
66f58a6f4b
docs: comprehensive README rewrite + plans archive note
Brian Krabach
2026-04-01 10:57:17 -07:00
-
025f81c3f1
fix: log exception from federation_client aclose for observability
Brian Krabach
2026-04-01 10:55:33 -07:00
-
8d8d0826a7
refactor: harden lifespan shutdown with try/finally and assert client closed in test
Brian Krabach
2026-04-01 10:52:22 -07:00
-
9c423d07db
fix: promote httpx to production dependencies
Brian Krabach
2026-04-01 10:48:02 -07:00
-
2001b3cba3
fix: reconcile 9 stale HTML/CSS tests with actual UI state
Brian Krabach
2026-04-01 10:44:24 -07:00