Commit Graph

79 Commits

Author SHA1 Message Date
PapaTramp 8a97bbfb43 merge: sync local backlog with kalinamall production URLs
Integrate diverged kalinamall/main; keep v0.7 agent-update docs and
kalinamall.ru paths in deploy/docs; mirror scripts remain removed.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-17 11:13:35 +10:00
PapaTramp 2069e57f14 docs: backlog for agent version compliance and remote updates
Add agent-update-backlog.md and roadmap v0.7 outline for SAC-driven
agent version tracking and remote update initiation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-17 11:07:12 +10:00
PapaTramp 6b288bfa49 chore(github): generic example.com in docs, remove mirror scripts
Replace sac.kalinamall.ru with sac.example.com in public docs/deploy.
Remove Push-Mirror and Rewrite-GitHostUrls scripts from repo.
Simplify workspace-three-repos.md for GitHub-only workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-16 11:57:02 +10:00
PapaTramp 6bff073108 chore(docs): sync repository URLs for kalinamall mirror 2026-06-16 11:41:07 +10:00
PapaTramp 36ccfc9471 chore(docs): GitHub URLs in README/docs, remove .cursor from repo
Replace git.kalinamall.ru links with github.com/PTah in public docs.
Add Rewrite-GitHostUrls.ps1 and Push-Mirror.ps1 for kalinamall mirror pushes.
Add .cursor/ to .gitignore.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-16 11:37:20 +10:00
PapaTramp e022f2f213 docs: sac-api.kalinamall.ru и схема HAProxy для Seaca.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-13 12:01:06 +10:00
PapaTramp f0bd31c544 fix(nginx): отклонять чужие Host на SAC (default_server 444)
Только sac.kalinamall.ru; ext.kalinamall.ru и прочие имена на IP SAC не отдают UI. ssl_reject_handshake на :443.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-13 11:24:21 +10:00
PapaTramp e2b5fb7604 docs: Seaca mobile operator guide and FCM setup
Документация для админа и runbook: коды регистрации, устройства,
настройка SAC_FCM на сервере.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 15:34:34 +10:00
PapaTramp 86c602cf07 docs: add v0.6 Mobile (Seaca) to roadmap and README
Links the new Android client repo and documents server-side mobile API work.
2026-06-10 12:45:52 +10:00
PapaTramp aafb80fa31 feat: proactive host_silence scan for stale agent.heartbeat (0.8.3)
Background scan every 5 min opens rule:host_silence and notifies without
waiting for the next ingest event. CLI job + optional systemd timer.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 09:07:32 +10:00
PapaTramp 02200f1a80 docs: note Exchange WinRM strict mode in agent integration
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-05 11:07:46 +10:00
PapaTramp 54337a5917 feat: host inventory (agent.inventory), host detail page, UI columns
Store hardware/software snapshots on hosts; warn on hardware changes. Host card from Hosts list. Add agent version column to Events/Overview; rename Hosts table columns and sort by status.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-05 09:53:00 +10:00
PapaTramp 57793d24ba feat: SAC support smb.admin_share.access events from RDP agent
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-04 10:14:14 +10:00
PapaTramp 1580982d88 fix: rename README screenshots to bust stale CDN/browser cache
Same user-provided PNGs (no blur); new filenames avoid serving old
Gaussian-blurred assets cached at dashboard.png / events.png paths.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-03 14:18:07 +10:00
PapaTramp 7ab497b300 docs: restore original README screenshots without extra blur
Use user-provided redacted images as-is for dashboard, events, and problems.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-03 14:13:47 +10:00
PapaTramp 2d39943020 docs: add sanitized UI screenshots to README (0.7.4)
Dashboard, events, and problems screenshots with hostnames and IPs blurred.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-03 14:11:14 +10:00
PapaTramp de29270a25 feat: SAC 0.7.0 display_name columns and event severity overrides
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-01 10:21:43 +10:00
PapaTramp 8de5d14cfb feat: SAC 0.6.0 user edit UI, login to dashboard, daily report timer sync
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-01 09:55:12 +10:00
PapaTramp 56c469ddbd feat: multi-user UI login with admin and monitor roles
Add sac_users table, JWT roles, settings/users API guarded for admin, Users page in UI, and sac_manage_user.py CLI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-01 09:27:14 +10:00
PapaTramp 799f8668e6 feat: Telegram templates for RDS shadow and WinRM session events
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-30 10:20:57 +10:00
PapaTramp eba2f0d15c docs: agent daily report toggles and unified template versions
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 17:18:03 +10:00
PapaTramp 7ebbb9a9d1 feat: unify SSH and Windows daily report layout in SAC and UI
Agent-style report body for SAC aggregation; shared stats cards; RDP ban note in docs

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 17:03:29 +10:00
PapaTramp 0baeacf808 docs: mark notification epic complete in work-plan
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:31:18 +10:00
PapaTramp 42f31b3bb5 fix: dashboard and hosts count SSH and RDP daily reports
analytics-a4: daily_reports_24h uses report.daily.*; sac-deploy enables timers
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:31:09 +10:00
PapaTramp 415d863b3b feat: SAC daily reports from DB aggregation (notif-32)
- Aggregate report.daily.ssh/rdp from 24h ingest; job and systemd timer

- notify_daily_report bypasses NOTIFY_MIN_SEVERITY; ingest routes agent reports

- HTML templates, env SAC_DAILY_REPORT_*, docs and tests (56 cases)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:30:07 +10:00
PapaTramp 4167687dec feat: notification cooldown dedup for events and problems (notif-31)
Store last notify time by dedup_key/fingerprint, gate dispatch before
channels; config SAC_NOTIFY_*_COOLDOWN_SEC, migration 008.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:24:01 +10:00
PapaTramp 1a70980920 feat: HTML Telegram templates for RDP/SSH events (notif-30)
Agent-style messages from event details, parse_mode HTML, templates for
login/sudo/RDG and problems; unit tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:21:40 +10:00
PapaTramp ebb450be92 feat: global notification policy severity to channels (notif-22)
Singleton notification_policy table, NOTIFY_MIN_SEVERITY/CHANNELS env,
central dispatch gate, Settings policy UI, migration 007.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:19:26 +10:00
PapaTramp 9b177c145b feat: SMTP email notification channel with UI and ingest
Migration 006, email config DB/env, smtplib sender, settings API,
Settings UI section, and dispatch on event/problem ingest.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:12:55 +10:00
PapaTramp 20fa7e2c27 feat: webhook notification channel with UI and ingest dispatch
Add webhook config (DB/env), JSON POST on events/problems, settings API,
Settings UI section, and notify_dispatch for multi-channel ingest.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:09:40 +10:00
PapaTramp f7b5fff04e docs: E2E checklist for SAC Telegram severity (notif-02)
Add synthetic ingest curl steps, update prod next steps for migration 004.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:06:58 +10:00
PapaTramp 79a78dc7c9 feat: Telegram settings in DB with UI edit and test send
Store notification_channels (migration 004), effective config DB over env,
PUT/test API endpoints, Settings form, and pass db session into ingest notify.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 16:05:32 +10:00
PapaTramp e0ba384705 feat: SAC Telegram settings view, notify_problem severity gate, exclusive docs
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-29 15:58:08 +10:00
PapaTramp 117390cbca docs: add 2026-05-29 todo for SAC notifications and Settings UI
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 15:39:21 +10:00
PapaTramp a42a63b8fa docs: add analytics backlog for deferred SAC development
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 15:17:08 +10:00
PapaTramp 81cf9c46b3 feat: improve SAC UI layout, reports state, and hosts sorting
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 13:17:37 +10:00
PapaTramp d4bf6e536c feat: host display_name в ingest, поиск хостов, UI и docs
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 11:49:10 +10:00
PapaTramp 108e1756c4 feat: live последние события на Dashboard; retention, health, runbook
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 11:29:31 +10:00
PapaTramp 9ed0670863 docs: RDP SAC 1.2.12 null+JSON fix
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 10:44:23 +10:00
PapaTramp fcf3da223c test/docs: RDP agent.lifecycle ingest and 422 notes
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 10:34:23 +10:00
PapaTramp f322a46f98 docs: RDP SAC 409 spool loop fix 1.2.10-SAC
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 10:27:25 +10:00
PapaTramp a218ff2581 docs: RDP SAC spool 422 and 1.2.9-SAC notes
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 10:20:31 +10:00
PapaTramp 98055dfdf8 docs: RDP SAC UTF-8 fix note for report.daily.rdp mojibake
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 10:05:49 +10:00
PapaTramp c8f357007f feat: dashboard top hosts/types, problems 24h, drill-down (d2-2)
- Extend /dashboards/summary; Events filters from query (hostname, severity)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 10:01:07 +10:00
PapaTramp 249894d8e1 feat: UI Problems list filters, detail card and event timeline (d2-1)
- Filters status/severity/hostname; /problems/:id with Ack/Resolve and timeline

- Dashboard drill-down to open problems

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 09:55:28 +10:00
PapaTramp 64b5ef297a feat: problem rules v1 brute-force, privilege spike, host silence (d1-3)
- Threshold rules on ingest; heartbeat auto-resolves host silence

- Config thresholds in sac-api.env; unit tests

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 09:51:05 +10:00
PapaTramp a4a224b284 feat: Problems correlation fingerprint, count, last_seen (d1-2)
- Migration 003; windowed host+type+rule correlation on ingest

- GET /problems filters; GET /problems/{id} with event timeline; ack/resolve 409 guard

- Tests and SAC_PROBLEM_CORRELATION_WINDOW_MINUTES config

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 09:46:12 +10:00
PapaTramp 8eb40cf75d docs: agent version bumps and deploy triggers (1.4)
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 09:34:22 +10:00
PapaTramp e0b066f5e5 fix(deploy): recover from diverging git after force-push on kalinamall
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 09:26:06 +10:00
PapaTramp 25a485fabb docs: git policy — kalinamall only, push after each feature
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-28 09:23:10 +10:00