Skip to content

Release 0.5

Choose a tag to compare

@iu2frl iu2frl released this 21 Feb 08:53
7557e99

New Features

  • SFTP File Manager — Browse, upload, download, rename, and delete files on any connected device directly from the browser (resolves #7). Includes full API coverage and comprehensive tests.
  • Audit Log — Tamper-evident activity log capturing login, logout, SSH session start/stop, password changes, and source IP. Configurable retention policy, dedicated UI viewer in the dashboard (resolves #8).
    • Audit events are recorded on SSH connect/disconnect with automatic cleanup on session end.
    • Source IP address is tracked and stored with every audit entry.

UI Improvements

  • Collapsible sidebar — The device list panel can now be collapsed to give the terminal more screen space (resolves #6).
  • Change password button — Moved to the dashboard header for easier access; SessionBadge component refactored accordingly (resolves #5).

Bug Fixes

  • Password validation error code — HTTP status for invalid password input changed from 400 to 422 Unprocessable Content to align with RFC / FastAPI conventions.

Testing & CI

  • Added integration and unit tests for authentication, device management, SSH service, terminal API, SFTP API, and SFTP service.
  • Added dedicated GitHub Actions workflow (unit-tests.yml) triggered on pushes to main and dev.
  • Introduced pytest.ini configuration and a shared conftest.py with reusable fixtures.
  • Added reports directory to .gitignore to keep generated coverage artifacts out of version control.

Dependencies

  • Bumped frontend npm dependencies (2 packages updated via Dependabot).

Documentation

  • Updated README with security recommendations, contributing guidelines, and a new Vibecoding section.
  • Security hardening notes moved to configuration.md.
  • Copilot coding guidelines updated to require dedicated test files per feature.