aidp 0.25.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +45 -6
  3. data/lib/aidp/analyze/error_handler.rb +11 -0
  4. data/lib/aidp/cli/checkpoint_command.rb +198 -0
  5. data/lib/aidp/cli/config_command.rb +71 -0
  6. data/lib/aidp/cli/enhanced_input.rb +2 -0
  7. data/lib/aidp/cli/first_run_wizard.rb +8 -7
  8. data/lib/aidp/cli/harness_command.rb +102 -0
  9. data/lib/aidp/cli/jobs_command.rb +3 -3
  10. data/lib/aidp/cli/mcp_dashboard.rb +4 -3
  11. data/lib/aidp/cli/models_command.rb +662 -0
  12. data/lib/aidp/cli/providers_command.rb +223 -0
  13. data/lib/aidp/cli.rb +35 -456
  14. data/lib/aidp/daemon/runner.rb +2 -2
  15. data/lib/aidp/debug_mixin.rb +2 -9
  16. data/lib/aidp/execute/async_work_loop_runner.rb +2 -1
  17. data/lib/aidp/execute/checkpoint_display.rb +38 -37
  18. data/lib/aidp/execute/interactive_repl.rb +2 -1
  19. data/lib/aidp/execute/prompt_manager.rb +4 -4
  20. data/lib/aidp/execute/work_loop_runner.rb +253 -56
  21. data/lib/aidp/execute/workflow_selector.rb +2 -2
  22. data/lib/aidp/harness/config_loader.rb +20 -11
  23. data/lib/aidp/harness/config_manager.rb +5 -5
  24. data/lib/aidp/harness/config_schema.rb +30 -8
  25. data/lib/aidp/harness/configuration.rb +105 -4
  26. data/lib/aidp/harness/enhanced_runner.rb +24 -15
  27. data/lib/aidp/harness/error_handler.rb +26 -5
  28. data/lib/aidp/harness/filter_strategy.rb +45 -0
  29. data/lib/aidp/harness/generic_filter_strategy.rb +63 -0
  30. data/lib/aidp/harness/model_cache.rb +269 -0
  31. data/lib/aidp/harness/model_discovery_service.rb +259 -0
  32. data/lib/aidp/harness/model_registry.rb +201 -0
  33. data/lib/aidp/harness/output_filter.rb +136 -0
  34. data/lib/aidp/harness/provider_manager.rb +18 -3
  35. data/lib/aidp/harness/rspec_filter_strategy.rb +82 -0
  36. data/lib/aidp/harness/runner.rb +5 -0
  37. data/lib/aidp/harness/test_runner.rb +165 -27
  38. data/lib/aidp/harness/thinking_depth_manager.rb +223 -7
  39. data/lib/aidp/harness/ui/enhanced_tui.rb +4 -1
  40. data/lib/aidp/logger.rb +35 -5
  41. data/lib/aidp/providers/adapter.rb +2 -4
  42. data/lib/aidp/providers/anthropic.rb +141 -128
  43. data/lib/aidp/providers/base.rb +98 -2
  44. data/lib/aidp/providers/capability_registry.rb +0 -1
  45. data/lib/aidp/providers/codex.rb +49 -67
  46. data/lib/aidp/providers/cursor.rb +71 -59
  47. data/lib/aidp/providers/gemini.rb +44 -60
  48. data/lib/aidp/providers/github_copilot.rb +2 -66
  49. data/lib/aidp/providers/kilocode.rb +24 -80
  50. data/lib/aidp/providers/opencode.rb +24 -80
  51. data/lib/aidp/safe_directory.rb +10 -3
  52. data/lib/aidp/setup/wizard.rb +345 -8
  53. data/lib/aidp/storage/csv_storage.rb +9 -3
  54. data/lib/aidp/storage/file_manager.rb +8 -2
  55. data/lib/aidp/storage/json_storage.rb +9 -3
  56. data/lib/aidp/version.rb +1 -1
  57. data/lib/aidp/watch/build_processor.rb +40 -1
  58. data/lib/aidp/watch/change_request_processor.rb +659 -0
  59. data/lib/aidp/watch/plan_generator.rb +93 -14
  60. data/lib/aidp/watch/plan_processor.rb +71 -8
  61. data/lib/aidp/watch/repository_client.rb +85 -20
  62. data/lib/aidp/watch/review_processor.rb +3 -3
  63. data/lib/aidp/watch/runner.rb +37 -0
  64. data/lib/aidp/watch/state_store.rb +46 -1
  65. data/lib/aidp/workflows/guided_agent.rb +3 -3
  66. data/lib/aidp/workstream_executor.rb +5 -2
  67. data/lib/aidp.rb +4 -0
  68. data/templates/aidp-development.yml.example +2 -2
  69. data/templates/aidp-production.yml.example +3 -3
  70. data/templates/aidp.yml.example +53 -0
  71. metadata +14 -1
@@ -149,7 +149,7 @@ providers:
149
149
  code_generation: true
150
150
  analysis: true
151
151
  vision: true
152
- streaming: true
152
+ supports_json_mode: true
153
153
  function_calling: true
154
154
  tool_use: true
155
155
 
@@ -254,7 +254,7 @@ providers:
254
254
  file_upload: true
255
255
  code_generation: true
256
256
  analysis: true
257
- streaming: true
257
+ supports_json_mode: true
258
258
 
259
259
  # Monitoring configuration
260
260
  monitoring:
@@ -365,7 +365,7 @@ providers:
365
365
  code_generation: true
366
366
  analysis: true
367
367
  vision: true
368
- streaming: true
368
+ supports_json_mode: true
369
369
 
370
370
  # Monitoring configuration
371
371
  monitoring:
@@ -708,6 +708,56 @@ devcontainer:
708
708
  # - "api.example.com"
709
709
  # - "registry.example.com"
710
710
 
711
+ # Watch mode configuration
712
+ # Configures automated monitoring and processing of GitHub issues/PRs
713
+ watch:
714
+ # Label configuration for different triggers
715
+ labels:
716
+ plan_trigger: "aidp-plan" # Trigger plan generation
717
+ needs_input: "aidp-needs-input" # Request clarification
718
+ ready_to_build: "aidp-ready" # Ready for implementation
719
+ build_trigger: "aidp-build" # Trigger implementation
720
+ review_trigger: "aidp-review" # Trigger code review
721
+ ci_fix_trigger: "aidp-fix-ci" # Trigger CI fix
722
+ change_request_trigger: "aidp-request-changes" # Trigger PR change requests
723
+
724
+ # Safety configuration
725
+ safety:
726
+ # Allow watch mode on public repositories (default: false for safety)
727
+ allow_public_repos: false
728
+
729
+ # List of GitHub usernames allowed to trigger automated actions
730
+ # Empty list means all authenticated users (for private repos)
731
+ author_allowlist: []
732
+ # - "user1"
733
+ # - "user2"
734
+
735
+ # Require running in a container environment (additional safety)
736
+ require_container: false
737
+
738
+ # PR change request configuration
739
+ pr_change_requests:
740
+ # Enable/disable PR change request feature
741
+ enabled: true
742
+
743
+ # Allow changes across multiple files in a single request
744
+ allow_multi_file_edits: true
745
+
746
+ # Run tests and linters before pushing changes
747
+ # If tests fail, changes are committed locally but not pushed
748
+ run_tests_before_push: true
749
+
750
+ # Prefix for commit messages created by change request processor
751
+ commit_message_prefix: "aidp: pr-change"
752
+
753
+ # Require at least one comment before processing change request
754
+ # This ensures there's context for what changes are requested
755
+ require_comment_reference: true
756
+
757
+ # Maximum PR diff size (in lines) to process
758
+ # Large PRs are skipped to avoid overwhelming the AI analysis
759
+ max_diff_size: 2000
760
+
711
761
  # Configuration tips:
712
762
  # - Set max_tokens based on your API plan limits
713
763
  # - Use default_flags to customize provider behavior
@@ -724,3 +774,6 @@ devcontainer:
724
774
  # - Use time-based configs for different usage patterns
725
775
  # - Use step-specific configs for different workflow steps
726
776
  # - Use user-specific configs for personalized experiences
777
+ # - Configure watch mode safety settings before using on public repositories
778
+ # - Set author_allowlist to restrict who can trigger automated actions
779
+ # - Adjust max_diff_size based on your typical PR sizes and AI capabilities
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aidp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.25.0
4
+ version: 0.27.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bart Agapinan
@@ -257,12 +257,17 @@ files:
257
257
  - lib/aidp/auto_update/update_policy.rb
258
258
  - lib/aidp/auto_update/version_detector.rb
259
259
  - lib/aidp/cli.rb
260
+ - lib/aidp/cli/checkpoint_command.rb
261
+ - lib/aidp/cli/config_command.rb
260
262
  - lib/aidp/cli/devcontainer_commands.rb
261
263
  - lib/aidp/cli/enhanced_input.rb
262
264
  - lib/aidp/cli/first_run_wizard.rb
265
+ - lib/aidp/cli/harness_command.rb
263
266
  - lib/aidp/cli/issue_importer.rb
264
267
  - lib/aidp/cli/jobs_command.rb
265
268
  - lib/aidp/cli/mcp_dashboard.rb
269
+ - lib/aidp/cli/models_command.rb
270
+ - lib/aidp/cli/providers_command.rb
266
271
  - lib/aidp/cli/terminal_io.rb
267
272
  - lib/aidp/concurrency.rb
268
273
  - lib/aidp/concurrency/backoff.rb
@@ -305,12 +310,19 @@ files:
305
310
  - lib/aidp/harness/configuration.rb
306
311
  - lib/aidp/harness/enhanced_runner.rb
307
312
  - lib/aidp/harness/error_handler.rb
313
+ - lib/aidp/harness/filter_strategy.rb
314
+ - lib/aidp/harness/generic_filter_strategy.rb
315
+ - lib/aidp/harness/model_cache.rb
316
+ - lib/aidp/harness/model_discovery_service.rb
317
+ - lib/aidp/harness/model_registry.rb
318
+ - lib/aidp/harness/output_filter.rb
308
319
  - lib/aidp/harness/provider_config.rb
309
320
  - lib/aidp/harness/provider_factory.rb
310
321
  - lib/aidp/harness/provider_info.rb
311
322
  - lib/aidp/harness/provider_manager.rb
312
323
  - lib/aidp/harness/provider_metrics.rb
313
324
  - lib/aidp/harness/provider_type_checker.rb
325
+ - lib/aidp/harness/rspec_filter_strategy.rb
314
326
  - lib/aidp/harness/runner.rb
315
327
  - lib/aidp/harness/simple_user_interface.rb
316
328
  - lib/aidp/harness/state/errors.rb
@@ -400,6 +412,7 @@ files:
400
412
  - lib/aidp/version.rb
401
413
  - lib/aidp/watch.rb
402
414
  - lib/aidp/watch/build_processor.rb
415
+ - lib/aidp/watch/change_request_processor.rb
403
416
  - lib/aidp/watch/ci_fix_processor.rb
404
417
  - lib/aidp/watch/plan_generator.rb
405
418
  - lib/aidp/watch/plan_processor.rb