rcourtman
778a2577b6
feat: Pulse v6 release
2026-03-18 16:06:30 +00:00
rcourtman
098a722e03
Cover blocked AI fetch hosts
2026-02-04 13:54:32 +00:00
rcourtman
dd3e9fc4a8
Cover loopback override in AI fetch guard
2026-02-04 13:53:29 +00:00
rcourtman
60f9e6f07f
security: fix multiple vulnerabilities (SAML, SSRF, Auth)
...
Addressed several security findings:
- SAML: Sanitized RelayState to prevent open redirects
- SAML: Fixed logout to properly invalidate server-side sessions
- Auth: Added auth, rate limiting, and logout checks to password change endpoint
- AI: Added admin/scope gating (ai:execute) for command execution
- AI: Blocked private IP ranges in fetch_url to prevent SSRF
- Config: Enforced settings:read/write scopes for export/import
- Agent: Added agent:exec scope requirement for WebSockets
2026-02-03 18:39:15 +00:00
rcourtman
3fdf753a5b
Enhance devcontainer and CI workflows
...
- Add persistent volume mounts for Go/npm caches (faster rebuilds)
- Add shell config with helpful aliases and custom prompt
- Add comprehensive devcontainer documentation
- Add pre-commit hooks for Go formatting and linting
- Use go-version-file in CI workflows instead of hardcoded versions
- Simplify docker compose commands with --wait flag
- Add gitignore entries for devcontainer auth files
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-01 22:29:15 +00:00
rcourtman
a1f811cb9e
test(ai): improve AI package test coverage from 59.7% to 69.5%
...
Add comprehensive tests for:
- alert_triggered.go: analysis functions (92%+ coverage)
- patrol_history_persistence.go: all store methods (100%)
- patrol.go: helper functions and getters (100%)
- findings.go: Add edge cases, severity escalation (100%)
- Export functions: all config/detector constructors (100%)
New test files created:
- patrol_history_persistence_test.go
- exports_test.go
- service_extended_test.go
- service_remediation_test.go
- service_tools_test.go
- mock_test.go
Also add coverage.html to .gitignore to exclude generated coverage reports.
2025-12-19 21:53:06 +00:00