github kOlapsis/maintenant v1.1.0
Maintenant v1.1.0

latest releases: v1.3.9, v1.3.8, v1.3.7...
5 months ago

Maintenant v1.1.0

New Features

Network Security Insights

Maintenant now inspects container network configurations and flags common misconfigurations:

  • Exposed port analysis — detects containers binding directly to 0.0.0.0, database ports exposed without restriction, and host-network mode usage
  • Dynamic CVE ecosystem resolver — maps container images to their software ecosystem (OS packages, language runtimes, application servers) using OCI manifest inspection with a multi-level fallback chain (labels, manifest config, known image databases)
  • Per-container security detail — security insights are accessible directly from the container detail panel

Unified Security Posture Dashboard (Pro)

A new dedicated page provides a single view of infrastructure security health:

  • Security posture scoring — each container receives a score based on its network exposure, image update status, and CVE-relevant configuration. A global posture view aggregates scores across the infrastructure
  • Global posture score with breakdown by category (network, updates, configuration)
  • Per-container risk ranking with drill-down to individual findings
  • Severity distribution across all monitored containers
  • Risk acknowledgment — dismiss known findings with audit trail

In-Place Entity Navigation

Alerts, dashboard, and security posture pages now open entity details directly in a slide-over panel instead of navigating away. This keeps context visible while inspecting a specific container, endpoint, or certificate.

  • Incident feed items link directly to the relevant entity with its detail panel auto-opened
  • Deep linking support — entity detail URLs are shareable

Compose-Aware Update Commands

Update and rollback commands now include the correct --project-directory flag, so they work reliably when the compose file lives outside the current working directory.


Bug Fixes

  • Stale update records after container upgrade — update records now clear automatically when a container has been upgraded to the latest version, and re-scans correctly update the tracked current tag
  • Certificate monitor UNIQUE constraint — certificate monitor creation no longer fails on startup when an inactive monitor already exists for the same host:port pair
  • Memory consumer sorting — top consumers are now ranked by absolute memory usage (bytes) instead of percentage of limit, which gave misleading results for containers with memory limits set
  • MAINTENANT_ADDR in deployment examples — all docker-compose examples now include the required MAINTENANT_ADDR environment variable

Technical Improvements

Application Architecture

The backend has been restructured for maintainability:

  • App container — service wiring extracted from main.go into internal/app, reducing the main function to configuration and startup
  • Dependency injection via Deps structs — all service constructors now accept a typed struct instead of positional parameters, making dependencies explicit and constructor signatures stable as the codebase grows
  • Dead code removal — unused SetEventCallback calls and orphaned registration methods cleaned up

HTTP Layer

  • Middleware chain extraction — middleware is now composed declaratively instead of being nested in the router constructor
  • Register* methods folded into NewRouter — route registration is centralized, removing scattered setup code
  • http.Flusher preservation — the middleware chain now correctly passes through the Flusher interface, fixing SSE streaming through middleware

Testing

  • Unit tests added for heartbeat, resource, status, and five other core service packages
  • Tests run with -race to catch concurrency issues early

Frontend

  • ContainerCard redesigned using design system tokens for consistent spacing, typography, and color usage
  • SMTP notification page shows a clear "not configured" placeholder instead of an empty state
  • Page layouts normalized across the application

Build Tooling

  • Makefile added with build, test, and lint targets

Upgrading from v1.0.1

  1. Pull the new image and recreate: docker compose up -d --force-recreate
  2. Database migrations run automatically (adds compose working directory tracking)
  3. No configuration changes required

Don't miss a new maintenant release

NewReleases is sending notifications on new releases.