Files
core-api/CHANGELOG.md
T
Jeroen SchweitzerandClaude Opus 4.5 7d13be6052
Build and Push / build (release) Successful in 50s
fix: use uuid field instead of pk for Authentik user sync
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 21:27:21 +01:00

6.1 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.4.4] - 2026-01-01

Fixed

  • Use uuid field instead of pk for Authentik user sync (pk is integer, uuid is proper UUID)
  • Skip internal_service_account type users during bulk sync

[1.4.3] - 2026-01-01

Fixed

  • Manually extract and send session cookies for Authentik flow auth (fixes cross-domain cookie handling)

[1.4.2] - 2026-01-01

Fixed

  • Use Authentik domain URL (auth.schweitz.net) instead of IP to fix cookie domain matching

[1.4.1] - 2026-01-01

Fixed

  • Authentik config now uses AUTHENTIK_USERNAME/PASSWORD to match production env vars

[1.4.0] - 2026-01-01

Added

  • Authentication & User Management - Authentik integration for user synchronization
    • GET /auth/me - Get current authenticated user info
    • GET /auth/users - List all users with search and pagination
    • POST /auth/users/sync-from-authentik - Bulk sync users from Authentik admin API
  • PostgreSQL database integration with async SQLAlchemy
  • Alembic database migrations for schema management
  • Database models: User, Role, UserPreferences, ApiKey
  • Token validation via Authentik userinfo endpoint
  • Role synchronization from Authentik groups
  • Health check now includes database connectivity status

Changed

  • Authentik configuration now uses username/password for admin API access
  • Health endpoint includes database status in diagnostics

[1.3.1] - 2025-12-31

Changed

  • Simplified configuration: all settings now read from environment variables/.env only
  • Removed Docker socket fallback for container operations (Portainer API is now required)
  • Updated default search provider to SearXNG

Removed

  • src/credentials.py - credentials now managed via environment variables
  • Docker socket fallback methods from Portainer client
  • Unused search API settings (Brave, Google)

[1.3.0] - 2025-12-31

Added

  • Stack Management Endpoints for Tatlock Control Room integration
    • GET /infrastructure/stacks/{stackId}/compose - Get stack Docker Compose YAML
    • PUT /infrastructure/stacks/{stackId}/compose - Update stack Docker Compose YAML
    • GET /infrastructure/stacks/{stackId}/env - Get stack environment variables
    • PUT /infrastructure/stacks/{stackId}/env - Update stack environment variables
    • POST /infrastructure/stacks/{stackId}/deploy - Redeploy stack
    • POST /infrastructure/stacks/{stackId}/rebuild - Pull images and recreate containers
  • DELETE /infrastructure/containers/{id} - Delete container with optional force flag
  • Portainer client methods: get_stack_file, redeploy_stack, update_stack_env, delete_container, restart_container

Removed

  • REQUESTED_SERVICES.md - endpoint specifications now implemented

[1.2.1] - 2025-12-17

Fixed

  • Device control endpoint now returns correct new state after action (added 300ms delay for HA state propagation)

Added

  • AGENTS.md with project coding guidelines and release flow documentation

Changed

  • Removed obsolete web scraper settings from .env.example

[1.2.0] - 2025-12-17

Added

  • Housekeeping API - Home Assistant integration for smart home control
    • GET /housekeeping/health - HA connection status
    • GET /housekeeping/devices - List controllable devices with optional domain/area filtering
    • GET /housekeeping/devices/{entity_id} - Get device details
    • POST /housekeeping/devices/{entity_id}/control - Control devices (turn_on, turn_off, toggle, set_brightness)
    • GET /housekeeping/scenes - List available scenes
    • POST /housekeeping/scenes/{scene_id}/activate - Activate a scene
    • GET /housekeeping/scripts - List available scripts
    • POST /housekeeping/scripts/{script_id}/run - Run a script
    • GET /housekeeping/automations - List automations
    • POST /housekeeping/automations/{automation_id}/toggle - Enable/disable automation
    • GET /housekeeping/history - Query state history
    • GET /housekeeping/areas - List rooms/areas
  • Home Assistant REST API client (src/clients/homeassistant_client.py)
  • Home Assistant configuration in credentials and settings
  • Comprehensive test suite with 65% code coverage (285 tests)
  • Tests for NPM client, Ollama client, AI client, OIDC authentication
  • Tests for infrastructure, health, tools, and housekeeping endpoints

Removed

  • Web Scraper - Entire web scraping module removed
    • src/web_scraper/ directory deleted
    • /web-scraper/scrape endpoint removed
    • Trafilatura and BeautifulSoup dependencies removed from scraping use

Changed

  • Updated README.md with current architecture and all endpoints
  • Tools controller now only contains DNS lookup functionality
  • Health controller endpoints list updated to reflect current features

[1.1.2] - 2024-12-14

Added

  • Version field to /health endpoint response

[1.1.1] - 2024-12-14

Added

  • Watchtower trigger step in CI workflow for automatic container updates

[1.1.0] - 2024-12-14

Removed

  • Uptime Kuma integration (kuma_client.py deleted)
  • All /infrastructure/monitors endpoints
  • Kuma monitor pause/resume from service start/stop operations
  • Uptime percentage display from service control widget
  • Kuma-related configuration and credentials
  • Stale memory tests (memory functionality moved to core-ai service)

Changed

  • Service control widget now uses Portainer container status exclusively
  • Simplified widget-data endpoint response (removed monitors field)
  • Updated service start/stop to only manage containers via Portainer

[1.0.0] - 2024-12-14

Added

  • Initial release of Core Code API service extracted from portainer-core
  • Infrastructure management endpoints for Portainer, NPM, and Uptime Kuma
  • Web scraping service with content extraction
  • DNS management endpoints
  • Health check endpoints with diagnostics
  • OIDC authentication support via Authentik
  • Ollama integration for embeddings
  • OpenAPI documentation (Swagger UI and ReDoc)
  • Docker containerization with CI/CD workflow