Repository navigation
v0.7.2-beta
Pre-release
Pre-release
·
117 commits
to master
since this release
LogSentinel AI v0.7.2-beta — Security Hardening & Consistency
Comprehensive security hardening, audit coverage, CSS/UI consistency, and Docker reliability improvements.
Upgrade from v0.7.0 or v0.7.1 is strongly recommended.
What's New in v0.7.2
Security Hardening
- ILIKE Wildcard Injection Fix — User input in event search, trace search, and audit log actor filter is now escaped for
%and_wildcards before ILIKE queries, preventing pattern injection (OWASP A03). - Multi-Permission Auth —
requireAuth()now accepts an array of permissions (OR logic), enabling finer-grained access control on shared endpoints. - Systems Audit Logging — Create, update, and delete operations on monitored systems now produce immutable audit log entries. Previously the only CRUD module without audit coverage.
- Date Validation Order — Event acknowledge/unacknowledge endpoints now validate date inputs before parsing, preventing uncaught exceptions on malformed dates.
Bug Fixes — Backend (v0.7.1 + v0.7.2)
- Transactional Role Operations — Role creation and permission updates wrapped in DB transactions.
- Invalid Role Rejection — Creating a user with a non-existent role returns HTTP 400 instead of silently defaulting.
- Unknown Permission Rejection — Invalid permission names return HTTP 400 instead of being silently dropped.
- Administrator Protection — Cannot strip all permissions from the
administratorrole via API. - Cache TTL Fix — Synchronous permission cache respects the 30-second TTL.
- Roles Read Access — GET
/api/v1/rolesnow accepts eitherusers:manageorroles:managepermission, so custom roles with onlyroles:managecan use the roles editor. - Logging Consistency —
localTimestamp()added to all remaining log statements (redact.ts, API key errors).
Bug Fixes — Frontend (v0.7.1 + v0.7.2)
- Missing CSS Variables — Added
--danger,--muted, and--surfaceto:root. Inline styles referencing these now render correctly. - Missing CSS Classes — Added
btn-success-outline,btn-primary, andbadge-ok. Buttons and badges previously had no visual styling. - CSS Selector Fix —
.tok-opt-row inputselector updated to matchNumericInputrendered type (textinstead ofnumber). - Input Type Consistency — Replaced all remaining
type="number"inputs in SystemForm and SourceForm withtype="text" inputMode="numeric"to prevent snapping. - Audit Log Export Dates — Export now converts EU dates to ISO format before sending to server.
- Role Editor — Dirty state no longer polluted by Create modal; edit form re-syncs after save.
- User Management Fallback — Role dropdown shows defaults when API is unavailable.
- NumericInput NaN Guard — Displays
0/mininstead of literal "NaN" text. - Date Format — All dates across the entire dashboard consistently use
DD-MM-YYYYformat. - Number Inputs — All numeric inputs allow free clearing before typing a new value.
Docker & Infrastructure
- Health-Aware Startup — Backend now waits for PostgreSQL health check when using
--profile db. Dashboard waits for backend. - Version Alignment — Backend and dashboard
package.jsonversions synchronized to0.7.2.
Documentation
- INSTALL.md — OpenAI API key correctly marked as optional; troubleshooting section updated.
- RELEASE_NOTES.md — Comprehensive changelog for all changes since v0.7.0.
Deployment Options
Option A — All-in-One (PostgreSQL included)
Everything runs inside Docker — no external database needed.
git clone https://github.com/PhilipLykov/LogSentinelAI.git
cd LogSentinelAI/docker
cp .env.example .env
# Edit .env: set DB_PASSWORD (pick any strong password)
# Set DB_HOST=postgres
docker compose --profile db up -d --build
docker compose logs backend | grep -A 5 "BOOTSTRAP"
# Open http://localhost:8070Option B — External PostgreSQL (bring your own database)
Backend and dashboard run in Docker; you point them at your existing PostgreSQL server.
git clone https://github.com/PhilipLykov/LogSentinelAI.git
cd LogSentinelAI/docker
cp .env.example .env
# Edit .env: set DB_HOST=<your-pg-server> and DB_PASSWORD
docker compose up -d --build
docker compose logs backend | grep -A 5 "BOOTSTRAP"
# Open http://localhost:8070AI model and API key are configured after login via Settings > AI Model in the web UI.
See INSTALL.md for the complete deployment guide.
Upgrading from v0.7.0 or v0.7.1
cd LogSentinelAI
git pull
cd docker
docker compose up -d --build
# Migrations run automatically on startupFull documentation: README.md | INSTALL.md