PTah
fd1be5e7e4
feat: manual host add from Hosts list via WinRM/SSH (0.4.5)
...
Add host button probes Windows by hostname or Linux by IP, registers host in SAC and deploys agent in background.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-25 15:34:12 +10:00
PTah
86fd400f0b
fix: reset stale remote agent updates after sac-api restart (0.4.3)
...
Clear zombie running jobs on deploy and add admin API to cancel a stuck job.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-25 10:43:31 +10:00
PTah
719d5c5719
feat: login IP whitelist, blocks UI and fail2ban sync (0.4.1)
...
Admin settings for web login whitelist, blocked IP list with unblock,
and optional fail2ban ignoreip sync for SSH jail.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-25 10:06:10 +10:00
PTah
0601aafd2d
fix: hide ????????? after session terminate (0.3.8)
...
Persist session_terminated in event details, expose in API, and update Events/Dashboard UI.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-24 14:45:33 +10:00
PTah
8b3e43f30d
fix: event terminate-session 500 on rdp.login.success (0.3.7)
...
Use extract_event_actor_user instead of missing ORM field; map WinRM/SSH errors to HTTP 400.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-24 14:37:37 +10:00
PTah
407ef37004
fix: strict RDG 302/303 IP pairing keeps break button visible (0.3.6)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-23 16:30:16 +10:00
PTah
64b942447b
fix: reconcile daily report active users count and list (0.3.5)
...
Normalize empty-session placeholders; sync stats with report body after ingest.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-23 14:41:47 +10:00
PTah
8b52c5fe3c
fix: show RDS break only on active or flap 302 events (0.3.4)
...
Hide Obryv RDS on 303 and on 302 after normal session end; keep for open sessions and RDG flap.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 20:15:47 +10:00
PTah
1b96a3b2c7
fix: RDG event label and prefix type filter (0.3.2)
...
Use event 302/303 instead of Win302 in RDG titles. Match event types by prefix in events list (e.g. rdg.connection).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 20:07:22 +10:00
PTah
24ca87a47a
feat: RDG 302/303 display path labels and RDS session break (0.3.1)
...
Show RDS access via RDG-Comp or Haproxy-RDG-Comp, enable qwinsta/logoff on any RDG event with internal_ip.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 19:52:22 +10:00
PTah
6e3f0ede4d
fix(backend): loginctl JSON parse and filter ephemeral SSH sessions (0.20.34)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 16:00:02 +10:00
PTah
54c1d96933
fix(backend): non-login SSH and strict loginctl parse, SSH retry (0.20.31)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 10:54:56 +10:00
PTah
d848d94604
feat: host session list/terminate and event session actions (0.20.28)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-22 10:13:42 +10:00
PTah
7397ec30cd
fix(winrm): resolve System32 path for cmd test on minimal PATH (0.20.25)
...
WinRM run_cmd(hostname) failed on hosts where System32 is not in PATH.
2026-06-21 20:49:01 +10:00
PTah
bf7c83c408
feat: hide event types from SAC UI via Settings checkbox (0.20.23)
...
Per-type «Показывать в событиях» in severity settings; filters lists, dashboard, hosts, and problems.
2026-06-21 20:13:40 +10:00
PTah
5635be1322
feat: background remote agent updates survive SAC navigation (0.20.19)
2026-06-21 11:01:26 +10:00
PTah
f3a8952947
fix: friendly 502 handling, 2 uvicorn workers, file bundle cache (0.20.18)
2026-06-20 20:01:46 +10:00
PTah
4d9a9e7e2b
fix: decode WinRM Cyrillic from CP866 and show deploy.log UTF-8 (0.20.17)
2026-06-20 19:58:54 +10:00
PTah
9484160045
fix: UTF-8 BOM in RDP bundle zip for Russian Windows PowerShell (0.20.16)
2026-06-20 19:54:12 +10:00
PTah
6acbfe22de
fix: deliver RDP bundle via SAC HTTP zip download, not WinRM chunks (0.20.15)
2026-06-20 19:51:45 +10:00
PTah
ca90f5c296
fix: SAC pushes RDP bundle from git via WinRM, no client git (0.20.14)
2026-06-20 19:49:20 +10:00
PTah
191fb4e2cf
fix: WinRM RDP update only via git clone on client (0.20.13)
2026-06-20 19:46:22 +10:00
PTah
8c1a8fddb1
fix: WinRM RDP update via NETLOGON Deploy, git fallback (0.20.12)
2026-06-20 19:43:34 +10:00
PTah
05408e17c3
fix: WinRM RDP update via run_ps, strip CLIXML noise (0.20.11)
2026-06-20 19:41:05 +10:00
PTah
d3517a5706
fix: WinRM RDP update PowerShell quoting via EncodedCommand (0.20.10)
...
Broken -Command quotes caused ParserError on remote hosts; run deploy script through base64-encoded PowerShell.
2026-06-20 19:35:57 +10:00
PTah
ec5ec62240
fix: enforce SAC git URL when updating ssh-monitor agents (0.20.8)
...
Pass REPO_URL/GIT_BRANCH from agent settings over SSH, preflight git remotes on stale hosts, and stop using GitHub origin on routers.
2026-06-20 19:28:14 +10:00
PTah
fc9d630263
docs: refresh README; allow monitor JWT for RDG qwinsta/logoff (0.20.6)
...
Update platform docs for current features; Seaca and web operators with
monitor role can trigger WinRM actions via SAC API.
2026-06-20 19:02:58 +10:00
PTah
01d72d0f68
fix: show RDG flap badge on 302 and 303 events in SAC UI (0.20.5)
...
Seaca surfaced flap via Problems; the web UI only flagged 303 in DB and had
no visible label. Resolve flap pairs at read time and show badge plus qwinsta
on both sides of 302→303.
2026-06-20 17:27:41 +10:00
PTah
c21043d845
feat: bootstrap ssh-monitor updater when missing on host (0.20.2)
...
SAC now clones the ssh-monitor repo and installs update_ssh_monitor.sh before running the update when the remote updater script is absent.
2026-06-20 17:01:06 +10:00
PTah
f411d8f070
feat: git-based agent version reference and unified outdated badge (0.20.0)
...
SAC reads latest RDP/ssh-monitor versions from configured git repos for outdated detection, update targets, and settings test-git.
2026-06-20 16:25:53 +10:00
PTah
cd2f27792d
feat: agent updates from SAC, poll config, SSH/WinRM fallback (0.12.0)
...
Add agent update settings, pending self-update via poll, desired config per host, and automatic or manual SSH/WinRM fallback when agents do not report agent.update events.
2026-06-20 15:52:10 +10:00
PTah
75f4c475df
feat: RDG qwinsta/logoff via WinRM on client workstation (0.11.6)
...
SAC resolves internal_ip to a registered Windows host and runs qwinsta/logoff synchronously over WinRM instead of queueing commands to the gateway agent.
2026-06-20 15:36:12 +10:00
PTah
2eb06acb5b
feat: SSH card UX, agent version sync, persistent ssh_admin_ok (0.11.5)
...
Silent SSH probe on host card open; manual test feedback auto-hides. Persist ssh_admin_ok in DB (migration 019). After agent update read version from host and refresh UI.
2026-06-20 01:01:56 +10:00
PTah
6fea8262fb
fix: skip invalid/unresolvable SSH targets before connect (0.11.2)
...
Do not use human display_name as SSH host; skip short names that do not resolve on SAC (ubabuba -> IPv4 only).
2026-06-20 00:39:29 +10:00
PTah
2e839e0b16
fix: SSH sudo without TTY for non-root Linux admin (0.11.1)
...
Probe commands run without sudo; privileged update uses sudo -S. Add SSH connect and Linux admin API tests.
2026-06-20 00:36:12 +10:00
PTah
cc8f50de89
feat: Linux SSH admin and remote ssh-monitor update (0.11.0)
2026-06-20 00:25:35 +10:00
PTah
279ea925a8
fix: WinRM try host.hostname first like Enter-PSSession (0.10.4)
2026-06-20 00:13:02 +10:00
PTah
c8e3eef9d7
fix: WinRM NTLM username normalize and hostname-first targets (0.10.3)
2026-06-20 00:10:52 +10:00
PTah
2fe492b06b
fix: WinRM read_timeout must exceed operation_timeout (0.10.2)
2026-06-20 00:06:26 +10:00
PTah
154ba3efc2
feat: Windows admin in Settings UI and WinRM host test (0.10.1)
...
Store domain admin in ui_settings (DB overrides env); qwinsta/logoff use effective config.
Host card: POST /hosts/{id}/actions/winrm-test via pywinrm.
2026-06-20 00:01:17 +10:00
PTah
2aec488226
feat: RDG session flap rule, qwinsta/logoff queue and dashboard UI (0.9.13)
...
Detect 302→303 within 1–10s, Problem with 30s dedup, rdg_flap flag.
Agent command poll API, admin qwinsta/logoff from Overview. Migration 016.
2026-06-19 23:34:01 +10:00
PTah
55f047cd35
fix: Seaca push uses same lifecycle text as Telegram (0.9.11)
...
Reuse telegram templates for FCM title/body so agent start/restart
reasons reach mobile without Seaca app changes.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-17 11:35:17 +10:00
Andrey Lutsenko
3d36faa49d
fix(mobile): повторный enroll и удаление устройств в UI (0.9.10).
...
При повторной привязке Seaca переиспользуется запись device_uuid вместо INSERT.
Добавлены POST /devices/{id}/revoke и DELETE для полного удаления записи в настройках SAC.
2026-06-13 16:36:07 +10:00
PTah
7df718eed3
fix: 12h cooldown before reopening manually closed host_silence (0.9.9)
...
Track resolved_by on problems; suppress scan/ingest recreate after manual
resolve; reopen same problem after cooldown; auto-close via heartbeat unchanged.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-11 10:33:55 +10:00
PTah
3f671b9899
fix: FCM data-only push so Seaca controls sound (0.9.6)
...
Send title and body in the data payload instead of notification block so
onMessageReceived always runs and the app can honour silent mode in background.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-11 10:03:28 +10:00
PTah
3f7095ed03
fix: host_silence proactive notify when event is None
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-11 09:26:03 +10:00
PTah
e38bd8a52a
fix: FCM must not break ingest; add requests dependency (0.9.3)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-10 17:30:32 +10:00
PTah
f9baf96d88
fix: test push errors, skip heartbeat notify, stale 5h (0.9.2)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-10 17:25:16 +10:00
PTah
563b836acc
feat: Seaca mobile API, enrollment, FCM push and admin UI (0.9.0)
...
Adds mobile device registration by admin codes, refresh tokens, push channel
in notification policy, and Settings section for managing Seaca clients.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-10 13:19:14 +10:00
PTah
77e167b6e3
feat: add actor user column to events and dashboard tables
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-10 10:11:04 +10:00