Skip to content
Merged

sync #1530

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
e899f65
BE+FE: refactor totals retrieval + LUCIRPC old field name
jokob-sk Feb 9, 2026
e0d4e9e
GIT: ignore
jokob-sk Feb 10, 2026
a560009
TEST: fixing totals assert check dynamically
jokob-sk Feb 10, 2026
45157b6
timestamp cleanup
jokob-sk Feb 11, 2026
933004e
fixes
jokob-sk Feb 11, 2026
9ac8f6f
fixes
jokob-sk Feb 11, 2026
7af850c
Merge pull request #1508 from netalertx/chore_timestamps
jokob-sk Feb 11, 2026
70c3530
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 11, 2026
b57d366
BE+FE: refactor timezone UTC #1506
jokob-sk Feb 11, 2026
888d39d
DOCS: ADVISORIES
jokob-sk Feb 11, 2026
5caa240
Create new Reverse Proxy.md, remove old
adamoutler Feb 12, 2026
a81255f
Remove Backend API URL section from SKILL.md
adamoutler Feb 12, 2026
e741ff5
LANG: Vietnamese (vi_vn)
jokob-sk Feb 12, 2026
4e7df76
Improve explanation of reverse proxy benefits
adamoutler Feb 12, 2026
eb35e80
Merge pull request #1510 from adamoutler/proxy-docs
jokob-sk Feb 12, 2026
2765e44
BE+FE: Check if current mac != parent mac for network page setup #1513
jokob-sk Feb 13, 2026
a313b0c
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 13, 2026
46781ed
DOCS: dummy devices
jokob-sk Feb 14, 2026
bb39bde
Translated using Weblate (Russian)
YoSafeguard Feb 13, 2026
db689ac
Translated using Weblate (Ukrainian)
maksim2005UKR Feb 13, 2026
5e492bc
Translated using Weblate (Italian)
mapi68 Feb 14, 2026
aeaab6d
Translated using Weblate (Arabic)
sudanifree Feb 13, 2026
c91532f
Translated using Weblate (Japanese)
Feb 13, 2026
60ccfc7
Translated using Weblate (Chinese (Simplified Han script))
batmanpy Feb 13, 2026
60036a4
Translated using Weblate (French)
GitSpoon Feb 13, 2026
9676111
BE: Events deduplication and uniqueness
jokob-sk Feb 15, 2026
fd71527
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 15, 2026
3587169
BE+FE: refactor timezone UTC additional work #1506
jokob-sk Feb 15, 2026
c1e6a69
BE+FE: legacy sync endpoint removal - see release notes
jokob-sk Feb 15, 2026
5685a67
BE: lint
jokob-sk Feb 15, 2026
64dbf8a
BE: lint
jokob-sk Feb 15, 2026
e61bf09
BE+FE: refactor timezone UTC additional work #1506
jokob-sk Feb 15, 2026
4b58f3b
BE+FE: refactor timezone UTC additional work #1506
jokob-sk Feb 16, 2026
1181b56
Translated using Weblate (French)
GitSpoon Feb 16, 2026
6d98ee9
DOCS: migration
jokob-sk Feb 17, 2026
b594472
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 17, 2026
264cae3
feat: add health check endpoint and related schemas with tests
jokob-sk Feb 17, 2026
fa36adb
Merge branch 'main' into chore_timestamps
jokob-sk Feb 17, 2026
bc97a80
fix: update health check response and schema to handle nullable memor…
jokob-sk Feb 17, 2026
f2af4ff
Merge branch 'chore_timestamps' of https://github.com/netalertx/NetAl…
jokob-sk Feb 17, 2026
32e2d57
Merge pull request #1521 from netalertx/chore_timestamps
jokob-sk Feb 17, 2026
774c123
BE: psutil missing
jokob-sk Feb 18, 2026
f63658a
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 18, 2026
7075091
BE: psutil missing
jokob-sk Feb 18, 2026
91775de
BE: psutil missing
jokob-sk Feb 18, 2026
876cd4b
BE: psutils missing
jokob-sk Feb 18, 2026
2742414
BE: /health endpoint
jokob-sk Feb 18, 2026
04884a2
DOCS: bug #1524
jokob-sk Feb 18, 2026
12b0d91
DOCS: UNIFIAPI
jokob-sk Feb 19, 2026
05c3328
BE: force upgrade of unifi-sm-api>=0.2.2 #1524
jokob-sk Feb 19, 2026
50f341e
BE: force upgrade of unifi-sm-api>=0.2.3 #1524
jokob-sk Feb 19, 2026
2018636
Translated using Weblate (Russian)
YoSafeguard Feb 19, 2026
ab7df43
INS: handle LOADED_PLUGINS env variable
jokob-sk Feb 21, 2026
688d49b
Merge branch 'main' of https://github.com/jokob-sk/NetAlertX
jokob-sk Feb 21, 2026
6bbfc06
BE+FE: better VLAN/SSID handling
jokob-sk Feb 21, 2026
2559702
BE+FE: better VLAN/SSID handling
jokob-sk Feb 21, 2026
eb0f705
BE: devices.csv import from file did nt work becasue of too strict va…
jokob-sk Feb 21, 2026
e9efabd
FE: mixed case on MACs broke node expansion/collapse
jokob-sk Feb 21, 2026
bf6218e
FE: mixed case on MACs broke node expansion/collapse
jokob-sk Feb 21, 2026
57d451f
BE: Parameters table, app.sql duplicate removal
jokob-sk Feb 21, 2026
63810bc
BE: Parameters table, app.sql duplicate removal
jokob-sk Feb 22, 2026
a261378
BE: # ---------------------------------------------------------------…
jokob-sk Feb 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apk add --no-cache \
shadow \
python3 \
python3-dev \
py3-psutil \
gcc \
musl-dev \
libffi-dev \
Expand Down Expand Up @@ -136,7 +137,7 @@ ENV LANG=C.UTF-8

RUN apk add --no-cache bash mtr libbsd zip lsblk tzdata curl arp-scan iproute2 iproute2-ss nmap fping \
nmap-scripts traceroute nbtscan net-tools net-snmp-tools bind-tools awake ca-certificates \
sqlite php83 php83-fpm php83-cgi php83-curl php83-sqlite3 php83-session python3 envsubst \
sqlite php83 php83-fpm php83-cgi php83-curl php83-sqlite3 php83-session python3 py3-psutil envsubst \
nginx supercronic shadow su-exec jq && \
rm -Rf /var/cache/apk/* && \
rm -Rf /etc/nginx && \
Expand Down
19 changes: 17 additions & 2 deletions .github/skills/code-standards/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@ description: NetAlertX coding standards and conventions. Use this when writing c

# Code Standards

- ask me to review before going to each next step (mention n step out of x)
- before starting, prepare implementation plan
- ask me to review it and ask any clarifying questions first
- add test creation as last step - follow repo architecture patterns - do not place in the root of /test
- code has to be maintainable, no duplicate code
- follow DRY principle
- code files should be less than 500 LOC for better maintainability

## File Length

Keep code files under 500 lines. Split larger files into modules.
Expand Down Expand Up @@ -42,11 +50,18 @@ Nested subprocess calls need their own timeout—outer timeout won't save you.
## Time Utilities

```python
from utils.datetime_utils import timeNowDB
from utils.datetime_utils import timeNowUTC

timestamp = timeNowDB()
timestamp = timeNowUTC()
```

This is the ONLY function that calls datetime.datetime.now() in the entire codebase.

⚠️ CRITICAL: ALL database timestamps MUST be stored in UTC
This is the SINGLE SOURCE OF TRUTH for current time in NetAlertX
Use timeNowUTC() for DB writes (returns UTC string by default)
Use timeNowUTC(as_string=False) for datetime operations (scheduling, comparisons, logging)

## String Sanitization

Use sanitizers from `server/helper.py` before storing user input.
Expand Down
8 changes: 0 additions & 8 deletions .github/skills/settings-management/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,3 @@ Define in plugin's `config.json` manifest under the settings section.
## Environment Override

Use `APP_CONF_OVERRIDE` environment variable for settings that must be set before startup.

## Backend API URL

For Codespaces, set `BACKEND_API_URL` to your Codespace URL:

```
BACKEND_API_URL=https://something-20212.app.github.dev/
```
6 changes: 3 additions & 3 deletions .github/workflows/run-all-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ on:
type: boolean
default: false
run_backend:
description: '📂 backend/ (SQL Builder & Security)'
description: '📂 backend/ & db/ (SQL Builder, Security & Migration)'
type: boolean
default: false
run_docker_env:
Expand Down Expand Up @@ -43,9 +43,9 @@ jobs:
run: |
PATHS=""
# Folder Mapping with 'test/' prefix
if [ "${{ github.event.inputs.scan }}" == "true" ]; then PATHS="$PATHS test/scan/"; fi
if [ "${{ github.event.inputs.run_scan }}" == "true" ]; then PATHS="$PATHS test/scan/"; fi
if [ "${{ github.event.inputs.run_api }}" == "true" ]; then PATHS="$PATHS test/api_endpoints/ test/server/"; fi
if [ "${{ github.event.inputs.run_backend }}" == "true" ]; then PATHS="$PATHS test/backend/"; fi
if [ "${{ github.event.inputs.run_backend }}" == "true" ]; then PATHS="$PATHS test/backend/ test/db/"; fi
if [ "${{ github.event.inputs.run_docker_env }}" == "true" ]; then PATHS="$PATHS test/docker_tests/"; fi
if [ "${{ github.event.inputs.run_ui }}" == "true" ]; then PATHS="$PATHS test/ui/"; fi

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ front/api/*
**/plugins/**/*.log
**/plugins/cloud_services/*
**/plugins/cloud_connector/*
**/plugins/heartbeat/*
**/%40eaDir/
**/@eaDir/

Expand Down
3 changes: 2 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ RUN apk add --no-cache \
shadow \
python3 \
python3-dev \
py3-psutil \
gcc \
musl-dev \
libffi-dev \
Expand Down Expand Up @@ -133,7 +134,7 @@ ENV LANG=C.UTF-8

RUN apk add --no-cache bash mtr libbsd zip lsblk tzdata curl arp-scan iproute2 iproute2-ss nmap fping \
nmap-scripts traceroute nbtscan net-tools net-snmp-tools bind-tools awake ca-certificates \
sqlite php83 php83-fpm php83-cgi php83-curl php83-sqlite3 php83-session python3 envsubst \
sqlite php83 php83-fpm php83-cgi php83-curl php83-sqlite3 php83-session python3 py3-psutil envsubst \
nginx supercronic shadow su-exec jq && \
rm -Rf /var/cache/apk/* && \
rm -Rf /etc/nginx && \
Expand Down
3 changes: 2 additions & 1 deletion Dockerfile.debian
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
python3 \
python3-dev \
python3-pip \
python3-psutil \
python3-venv \
gcc \
git \
Expand Down Expand Up @@ -193,7 +194,7 @@ RUN for vfile in .VERSION .VERSION_PREV; do \
# setcap cap_net_raw,cap_net_admin+eip $(readlink -f ${VIRTUAL_ENV_BIN}/python) && \
/bin/bash /build/init-nginx.sh && \
/bin/bash /build/init-php-fpm.sh && \
# /bin/bash /build/init-cron.sh && \
# /bin/bash /build/init-cron.sh && \
# Debian cron init might differ, skipping for now or need to check init-cron.sh content
# Checking init-backend.sh
/bin/bash /build/init-backend.sh && \
Expand Down
Loading