Repository navigation
v1.0.1 - Network Discovery & Enhanced Documentation
🆕 New Features
Network Discovery (nmap-scan.sh)
- CIDR auto-detection from primary interface (macOS/Linux)
- Fast scan mode: ping sweep + TCP 22,80,443 (default)
- Full scan mode: top 1000 ports with --full flag
- Delta tracking: compare with previous scans to detect changes
- Rate limiting: prevent network flooding (1-10000 pps)
- JSON output with schema versioning
- Secure logs: umask 077, directory 700, files 600
Service Health Check (service-health-check.sh)
- HTTP, TCP, process, and container checks
- Watch mode with configurable intervals
- Webhook notifications on state changes
- JSON output and dry-run support
- Example configuration in examples/services.conf
Virtualenv Deduplication
- Avoid duplicate listings when scanning overlapping roots (e.g., $HOME and $HOME/repos)
- Uses associative arrays with realpath canonicalization
- Affects both --scan-venvs and --clean-venvs operations
🔒 Security Enhancements
Pure Bash Implementations
- Removed xargs dependency: replaced with native string trimming
- Cross-platform reliability improvements
- No external command injection risks
📚 Documentation Improvements
New Documentation
- GEMINI.md: Gemini-specific patterns and guidelines
- ROADMAP.md: Phased development plan with priorities (v1.1.0-v2.0.0)
- Enhanced AGENTS.md: Complete v1.0.1 features reference
- Enhanced CLAUDE.md: Security hardening, troubleshooting, examples
Examples & Templates
- examples/services.conf: Sample service health check config
- .github-release-notes.md: Release notes template
🧪 CI/CD Improvements
- Updated shfmt to Go install method (more reliable)
- Added comprehensive nmap-scan.sh smoke tests
- CIDR validation tests
- Rate bounds checking tests
- Dependency handling tests
🐛 Fixes
- Fixed xargs sysconf warnings on certain environments
- Improved virtualenv scanning with overlapping paths
- Enhanced error handling in network scans
✅ Validation
All changes validated with:
- `shellcheck -S warning -e SC2034,SC2155 *.sh`: PASS
- `bash -n *.sh`: PASS
- Tested on: local (macOS), Pi 192.168.1.100, Pi 192.168.1.250
- Pre-commit hooks: PASS
🔗 Quick Links
Built with Claude Code