Changelog

All notable changes to CrumbForest Scanner will be documented in this file.

[v1.0-RC2] - 2025-12-22

πŸŽ‰ Second Release Candidate

Major Features: Full Cable Management System & Interactive Network Tools!

✨ Added

  • Cable Management System
  • Interactive Rack View (SVG-based)
  • Patch Panel Interface (Visual port mapping)
  • Drag & Drop connection logic
  • Validation (Loopback protection, Port checks)
  • Visual Feedback (Color-coded cables, Status indicators)
  • Asset Dashboard 2.0
  • Integrated Port View (Grid visualization of 24/48 ports)
  • Smart Port Inference (Auto-detect port count based on model)
  • Jump-to-Device navigation buttons
  • Unified Edit Flow (Stammdaten + Ports + History)
  • Online Node HUD (IPCalc)
  • Real-time Network Calculator in Asset Edit View
  • Video Game HUD Style (Dark mode, monospace)
  • Live Calculation: CIDR, Network, Broadcast, Host Range
  • Subnet Input field (CIDR notation)
  • API Endpoints
  • GET /cables/list (Filter by device/datacenter)
  • POST /cables/create (With validation)
  • DELETE /cables/{id}
  • Updated GET /scan/{id} to include port data

πŸ”„ Changed

  • Asset Dashboard: Now includes "Port Grid" and "IPCalc" by default
  • Modal Styling: Completely revamped for better overlay/backdrop support
  • Navigation: Added "Kabel" tab to main menu
  • Database: Added network_connections table and related views

πŸ› Fixed

  • API Bug: SQLSTATE[HY093] in cable list filter (PDO parameter reuse)
  • UI Bug: Modal z-index and centering issues on overlay
  • UI Bug: Missing close buttons on some mobile views

πŸ§ͺ Technical Details

  • Frontend Lines: +~450 lines (Cable Logic, Visuals)
  • Backend Lines: +~230 lines (API Endpoints)
  • CSS Lines: +~150 lines (Grid Layouts, HUD)

πŸ™ Credits

  • Gemini (Antigravity) & CrumbForest Crew - Co-Pilot & Lead Architect
  • Claude Code - Initial Base

[v1.0-RC1] - 2025-12-20

πŸŽ‰ First Release Candidate

Major Achievement: Complete migration from Docker/SQLite to Native LAMP stack with full test coverage!

✨ Added

  • PHPUnit Testing Framework (10.5.60)
  • 19 Unit Tests (Config, Auth, JWT validation)
  • 9 Integration Tests (Login flow, Database, API)
  • 28 total tests, 80 assertions
  • All tests passing βœ…
  • Code Coverage with Xdebug 3.5.0
  • HTML coverage reports
  • 36.23% line coverage (Config: 95%, Auth: 77%)
  • macOS M4 Support
  • Native Homebrew Apache + PHP 8.5 + MariaDB
  • Complete setup guide (SETUP_MACOS.md)
  • Automated setup script (macos-setup.sh)
  • Doktor Script (doktor-crumbforest.sh)
  • MySQL/MariaDB Doktor (new!)
  • PHP & Testing Doktor (new!)
  • Apache Status Check (new!)
  • Git Workstation
  • API Tools
  • System Info
  • Documentation
  • CLAUDE.md - AI Assistant Guide with "Naked" Philosophy
  • tests/README.md - Complete test documentation
  • SETUP_MACOS.md - Step-by-step M4 setup
  • Updated README.md with v1.0 info

πŸ”„ Changed

  • Database Migration: SQLite β†’ MariaDB
  • Fixed datetime format issues (Unix timestamps β†’ DATETIME)
  • Updated schema with bcrypt password hashing
  • Test database support (crumbforest_test)
  • Authentication: Argon2id β†’ bcrypt
  • Better PHP compatibility
  • Proper password_verify() support
  • API Router: Fixed autoloader path for native setup
  • Auth Class: Added CLI fallback for getallheaders()

πŸ› Fixed

  • Bug #1: DateTime format incompatibility (MariaDB vs SQLite)
  • Changed time() to date('Y-m-d H:i:s') in Auth::login()
  • Bug #2: getallheaders() undefined in CLI/PHPUnit
  • Added fallback to $_SERVER['HTTP_AUTHORIZATION']
  • Bug #3: Admin password hash was Argon2id (incompatible)
  • Updated to bcrypt in schema.sql
  • Bug #4: Autoloader path incorrect in api/index.php
  • Fixed path from ../vendor to ../../vendor

πŸ“š Documentation Updates

  • Complete rewrite of README.md for v1.0
  • Added "Design Philosophy: Naked" section
  • Updated all setup instructions for native LAMP
  • Moved legacy docs to docs/legacy/

πŸ—‘οΈ Removed

  • Docker/docker-compose references
  • SQLite support
  • Old doktor-setup.sh (replaced by doktor-crumbforest.sh)
  • Outdated .txt documentation files

πŸ§ͺ Testing

PHPUnit 10.5.60 by Sebastian Bergmann and contributors.
Runtime: PHP 8.5.0 with Xdebug 3.5.0

OK (28 tests, 80 assertions)

🎯 Technical Details

  • PHP: 8.5.0 (Homebrew, native)
  • MariaDB: 12.1.2 (Homebrew)
  • Apache: 2.4.x (Homebrew httpd)
  • Xdebug: 3.5.0 (PECL)
  • PHPUnit: 10.5.60
  • Composer: 2.9.2

πŸ¦‰ Philosophy

This release fully embraces the "Naked LAMP" approach:
- bash β†’ php β†’ mysql β†’ backend β†’ vanilla β†’ simple β†’ export
- No Docker, no containers, no framework magic
- Maximum transparency and simplicity
- Perfect for traditional datacenter/RZ environments

πŸ™ Credits

  • Built with Claude Code (AI-assisted development)
  • Inspired by pepperPHP "Naked" philosophy
  • Powered by Homebrew on macOS M4

[v0.1-RC0] - 2025-12-19

Initial "pepperPHP" Version

  • Docker-based setup
  • SQLite database
  • Basic scanner functionality
  • Argon2id password hashing

Legend:
- ✨ Added - New features
- πŸ”„ Changed - Changes in existing functionality
- πŸ› Fixed - Bug fixes
- πŸ—‘οΈ Removed - Removed features
- πŸ”’ Security - Security fixes