Commit Graph

7 Commits

Author SHA1 Message Date
Peter Steinberger
02143f21c2 fix: Optimize CI test execution to prevent timeouts
- Increase Swift test timeout from 10 to 15 minutes
- Switch from exclusion list to inclusion list for more control
- Run only core test suites that are stable and fast:
  - ImageCommandTests (including new analyze tests)
  - ImageAnalyzeIntegrationTests
  - ConfigCommandTests, ListCommandTests, VersionTests
  - ModelsTests, JSONOutputTests, ErrorHandlingTests
  - FileHandlingTests, ConfigurationTests
- Exclude potentially flaky or slow tests:
  - AI provider tests with network calls
  - Utility tests with Thread.sleep
  - Screenshot and window manager tests requiring permissions

This focused approach ensures CI runs reliably while still testing
the core functionality including the new image analyze feature.
2025-07-03 21:30:07 +01:00
Peter Steinberger
33dc9bf2c4 feat: Add Homebrew distribution, improve CLI UX, and enhance permissions visibility
- Set up Homebrew tap at github.com/steipete/homebrew-tap for easy installation
- Add automated Homebrew formula updates via GitHub Actions
- Show help menu when peekaboo is called without arguments
- Add combined capture + analyze mode with --analyze flag
- Rename server_status to permissions for clarity
- Add prominent permissions block to main help menu
- Add standalone 'peekaboo permissions' command
- Add https://peekaboo.boo to SEE ALSO section
- Improve discoverability for AI agents with clear permission requirements
- MCP server maintains backward compatibility while Swift CLI uses cleaner naming
2025-07-03 20:23:49 +01:00
Peter Steinberger
94e966fa98 feat: Add fuzzy matching for application names
- Implement Levenshtein distance algorithm for fuzzy app name matching
- Handle common typos like "Chromee" → "Google Chrome"
- Add window-specific labels in analysis results
- Improve error messages with app name suggestions
- Fix TypeScript JSON parsing for error responses
- Update tests for new error message formats

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-08 05:22:58 +01:00
Peter Steinberger
db02bc2c08 Fix TypeScript integration tests by building Swift CLI first on CI 2025-06-08 00:36:30 +01:00
Peter Steinberger
b1ddf6f1b6 Enhance Swift testing framework and test coverage
- Update CI configuration to use macOS-15 runner with Xcode 16.3
- Expand test coverage with comprehensive new test suites:
  * JSONOutputTests.swift - JSON encoding/decoding and MCP compliance
  * LoggerTests.swift - Thread-safe logging functionality
  * ImageCaptureLogicTests.swift - Image capture command logic
  * TestTags.swift - Centralized test tagging system
- Improve existing tests with Swift Testing patterns and async support
- Make Logger thread-safe with concurrent dispatch queue
- Add performance, concurrency, and edge case testing
- Fix compilation issues and optimize test performance

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-07 23:57:26 +01:00
Peter Steinberger
5c3958d305 Run mocked tests 2025-05-25 01:43:35 +02:00
Peter Steinberger
670e1c485a Add GitHub Actions CI workflow for Node.js builds
- Configure CI to run on macOS-latest
- Test with Node.js 20.x and 22.x
- Run npm build and tests on push/PR

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-05-25 01:25:35 +02:00