aidp 0.34.0 → 0.39.3

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 (133) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +14 -14
  3. data/lib/aidp/agent_harness_adapter.rb +309 -0
  4. data/lib/aidp/cli/issue_importer.rb +20 -6
  5. data/lib/aidp/cli/jobs_command.rb +1 -1
  6. data/lib/aidp/cli/models_command.rb +9 -16
  7. data/lib/aidp/cli/prompts_command.rb +253 -0
  8. data/lib/aidp/cli/security_command.rb +4 -10
  9. data/lib/aidp/cli/storage_command.rb +277 -0
  10. data/lib/aidp/cli/temporal_command.rb +460 -0
  11. data/lib/aidp/cli.rb +24 -2
  12. data/lib/aidp/config.rb +15 -0
  13. data/lib/aidp/config_paths.rb +12 -2
  14. data/lib/aidp/database/migrations.rb +114 -0
  15. data/lib/aidp/database/repositories/checkpoint_repository.rb +174 -0
  16. data/lib/aidp/database/repositories/deprecated_models_repository.rb +206 -0
  17. data/lib/aidp/database/repositories/evaluation_repository.rb +208 -0
  18. data/lib/aidp/database/repositories/harness_state_repository.rb +140 -0
  19. data/lib/aidp/database/repositories/job_repository.rb +278 -0
  20. data/lib/aidp/database/repositories/model_cache_repository.rb +194 -0
  21. data/lib/aidp/database/repositories/progress_repository.rb +210 -0
  22. data/lib/aidp/database/repositories/prompt_archive_repository.rb +195 -0
  23. data/lib/aidp/database/repositories/prompt_feedback_repository.rb +266 -0
  24. data/lib/aidp/database/repositories/provider_info_cache_repository.rb +208 -0
  25. data/lib/aidp/database/repositories/provider_metrics_repository.rb +245 -0
  26. data/lib/aidp/database/repositories/secrets_repository.rb +187 -0
  27. data/lib/aidp/database/repositories/task_repository.rb +231 -0
  28. data/lib/aidp/database/repositories/template_version_repository.rb +383 -0
  29. data/lib/aidp/database/repositories/watch_state_repository.rb +472 -0
  30. data/lib/aidp/database/repositories/workstream_repository.rb +310 -0
  31. data/lib/aidp/database/repositories/worktree_repository.rb +240 -0
  32. data/lib/aidp/database/repository.rb +166 -0
  33. data/lib/aidp/database/schema.rb +347 -0
  34. data/lib/aidp/database/storage_migrator.rb +693 -0
  35. data/lib/aidp/database.rb +139 -0
  36. data/lib/aidp/debug_mixin.rb +2 -2
  37. data/lib/aidp/execute/checkpoint.rb +26 -0
  38. data/lib/aidp/execute/checkpoint_display.rb +16 -0
  39. data/lib/aidp/execute/prompt_evaluator.rb +30 -57
  40. data/lib/aidp/execute/work_loop_runner.rb +294 -46
  41. data/lib/aidp/firewall/provider_requirements_collector.rb +7 -23
  42. data/lib/aidp/harness/agent_harness_provider_manager.rb +275 -0
  43. data/lib/aidp/harness/ai_decision_engine.rb +78 -296
  44. data/lib/aidp/harness/config_schema.rb +59 -0
  45. data/lib/aidp/harness/configuration.rb +229 -10
  46. data/lib/aidp/harness/deprecation_cache.rb +53 -11
  47. data/lib/aidp/harness/enhanced_runner.rb +1 -1
  48. data/lib/aidp/harness/error_handler.rb +11 -5
  49. data/lib/aidp/harness/provider_config.rb +36 -0
  50. data/lib/aidp/harness/provider_factory.rb +26 -24
  51. data/lib/aidp/harness/provider_info.rb +9 -5
  52. data/lib/aidp/harness/provider_manager.rb +2 -2
  53. data/lib/aidp/harness/provider_metrics.rb +103 -1
  54. data/lib/aidp/harness/rspec_command_optimizer.rb +166 -0
  55. data/lib/aidp/harness/ruby_llm_registry.rb +97 -8
  56. data/lib/aidp/harness/runner.rb +7 -2
  57. data/lib/aidp/harness/state_manager.rb +1 -1
  58. data/lib/aidp/harness/test_runner.rb +167 -11
  59. data/lib/aidp/harness/thinking_depth_manager.rb +564 -5
  60. data/lib/aidp/harness/ui.rb +11 -0
  61. data/lib/aidp/harness/usage_limit.rb +179 -0
  62. data/lib/aidp/harness/usage_limit_enforcer.rb +240 -0
  63. data/lib/aidp/harness/usage_limit_tracker.rb +308 -0
  64. data/lib/aidp/harness/usage_period.rb +234 -0
  65. data/lib/aidp/init/agent_instructions_generator.rb +317 -0
  66. data/lib/aidp/init/runner.rb +25 -4
  67. data/lib/aidp/interfaces/activity_monitor_interface.rb +234 -0
  68. data/lib/aidp/interfaces/binary_checker_interface.rb +232 -0
  69. data/lib/aidp/interfaces/command_executor_interface.rb +216 -0
  70. data/lib/aidp/interfaces/logger_interface.rb +150 -0
  71. data/lib/aidp/interfaces/ui_interface.rb +254 -0
  72. data/lib/aidp/logger.rb +25 -7
  73. data/lib/aidp/orchestration_adapter.rb +279 -0
  74. data/lib/aidp/pr_worktree_manager.rb +4 -15
  75. data/lib/aidp/prompts/feedback_collector.rb +198 -0
  76. data/lib/aidp/prompts/prompt_template_manager.rb +415 -0
  77. data/lib/aidp/prompts/template_evolver.rb +305 -0
  78. data/lib/aidp/prompts/template_version_manager.rb +325 -0
  79. data/lib/aidp/setup/in_memory_config_adapter.rb +257 -0
  80. data/lib/aidp/setup/in_memory_config_manager.rb +262 -0
  81. data/lib/aidp/setup/wizard.rb +616 -176
  82. data/lib/aidp/shell_executor.rb +58 -0
  83. data/lib/aidp/style_guide/selector.rb +56 -1
  84. data/lib/aidp/temporal/activities/analyze_issue_activity.rb +198 -0
  85. data/lib/aidp/temporal/activities/analyze_sub_task_activity.rb +163 -0
  86. data/lib/aidp/temporal/activities/base_activity.rb +78 -0
  87. data/lib/aidp/temporal/activities/create_plan_activity.rb +115 -0
  88. data/lib/aidp/temporal/activities/create_pr_activity.rb +193 -0
  89. data/lib/aidp/temporal/activities/create_prompt_activity.rb +118 -0
  90. data/lib/aidp/temporal/activities/diagnose_failure_activity.rb +228 -0
  91. data/lib/aidp/temporal/activities/prepare_next_iteration_activity.rb +147 -0
  92. data/lib/aidp/temporal/activities/record_checkpoint_activity.rb +81 -0
  93. data/lib/aidp/temporal/activities/run_agent_activity.rb +139 -0
  94. data/lib/aidp/temporal/activities/run_tests_activity.rb +114 -0
  95. data/lib/aidp/temporal/activities/run_work_loop_iteration_activity.rb +249 -0
  96. data/lib/aidp/temporal/configuration.rb +169 -0
  97. data/lib/aidp/temporal/connection.rb +93 -0
  98. data/lib/aidp/temporal/worker.rb +119 -0
  99. data/lib/aidp/temporal/workflow_client.rb +171 -0
  100. data/lib/aidp/temporal/workflows/base_workflow.rb +73 -0
  101. data/lib/aidp/temporal/workflows/issue_to_pr_workflow.rb +278 -0
  102. data/lib/aidp/temporal/workflows/sub_issue_workflow.rb +253 -0
  103. data/lib/aidp/temporal/workflows/work_loop_workflow.rb +321 -0
  104. data/lib/aidp/temporal.rb +120 -0
  105. data/lib/aidp/version.rb +1 -1
  106. data/lib/aidp/watch/base_processor.rb +35 -0
  107. data/lib/aidp/watch/build_processor.rb +132 -0
  108. data/lib/aidp/watch/github_state_extractor.rb +0 -8
  109. data/lib/aidp/watch/rebase_processor.rb +245 -0
  110. data/lib/aidp/watch/round_robin_scheduler.rb +150 -0
  111. data/lib/aidp/watch/runner.rb +366 -285
  112. data/lib/aidp/watch/state_store.rb +80 -0
  113. data/lib/aidp/watch/work_item.rb +96 -0
  114. data/lib/aidp/watch/worktree_cleanup_job.rb +226 -0
  115. data/lib/aidp/watch/worktree_reconciler.rb +643 -0
  116. data/lib/aidp/workflows/guided_agent.rb +1 -1
  117. data/lib/aidp/worktree.rb +62 -0
  118. data/templates/aidp.yml.example +70 -0
  119. metadata +118 -16
  120. data/lib/aidp/analyze/json_file_storage.rb +0 -292
  121. data/lib/aidp/execute/future_work_backlog.rb +0 -411
  122. data/lib/aidp/providers/adapter.rb +0 -239
  123. data/lib/aidp/providers/aider.rb +0 -264
  124. data/lib/aidp/providers/anthropic.rb +0 -614
  125. data/lib/aidp/providers/base.rb +0 -617
  126. data/lib/aidp/providers/capability_registry.rb +0 -204
  127. data/lib/aidp/providers/codex.rb +0 -267
  128. data/lib/aidp/providers/cursor.rb +0 -304
  129. data/lib/aidp/providers/error_taxonomy.rb +0 -195
  130. data/lib/aidp/providers/gemini.rb +0 -110
  131. data/lib/aidp/providers/github_copilot.rb +0 -227
  132. data/lib/aidp/providers/kilocode.rb +0 -157
  133. data/lib/aidp/providers/opencode.rb +0 -139
data/lib/aidp/worktree.rb CHANGED
@@ -30,6 +30,10 @@ module Aidp
30
30
  worktree_path = worktree_path_for(slug, project_dir)
31
31
 
32
32
  if Dir.exist?(worktree_path)
33
+ # Directory exists but not in registry - try to recover it
34
+ recovered = recover_existing_worktree(slug, worktree_path, branch, project_dir, task)
35
+ return recovered if recovered
36
+
33
37
  raise WorktreeExists, "Worktree already exists at #{worktree_path}"
34
38
  end
35
39
 
@@ -252,6 +256,64 @@ module Aidp
252
256
  end
253
257
  end
254
258
 
259
+ # Recover an existing worktree directory that isn't in the registry.
260
+ # This handles cases where a previous run was interrupted or the registry was lost.
261
+ #
262
+ # @param slug [String] Workstream identifier
263
+ # @param worktree_path [String] Path to the existing worktree directory
264
+ # @param expected_branch [String] The branch we expected to use
265
+ # @param project_dir [String] Project root directory
266
+ # @param task [String, nil] Task description for workstream state
267
+ # @return [Hash, nil] Worktree info if recovered, nil if recovery failed
268
+ def recover_existing_worktree(slug, worktree_path, expected_branch, project_dir, task)
269
+ # Only attempt recovery if the worktree is NOT already registered
270
+ # If it's registered, this is a true duplicate and should fail
271
+ registry = load_registry(project_dir)
272
+ return nil if registry.key?(slug)
273
+
274
+ # Check if it's a valid git worktree by looking for .git file
275
+ git_file = File.join(worktree_path, ".git")
276
+ return nil unless File.exist?(git_file)
277
+
278
+ # Get the current branch in the worktree
279
+ actual_branch = detect_worktree_branch(worktree_path)
280
+ return nil unless actual_branch
281
+
282
+ Aidp.log_debug("worktree", "recovering_existing",
283
+ slug: slug, path: worktree_path, branch: actual_branch)
284
+
285
+ # Ensure .aidp directory exists
286
+ ensure_aidp_dir(worktree_path)
287
+
288
+ # Re-register the worktree with its actual branch
289
+ register_worktree(slug, worktree_path, actual_branch, project_dir)
290
+
291
+ # Initialize workstream state if not already present
292
+ unless Aidp::WorkstreamState.read(slug: slug, project_dir: project_dir)
293
+ Aidp::WorkstreamState.init(slug: slug, project_dir: project_dir, task: task)
294
+ end
295
+
296
+ {
297
+ slug: slug,
298
+ path: worktree_path,
299
+ branch: actual_branch
300
+ }
301
+ end
302
+
303
+ # Detect the branch name for a worktree directory
304
+ #
305
+ # @param worktree_path [String] Path to the worktree
306
+ # @return [String, nil] Branch name or nil if detection failed
307
+ def detect_worktree_branch(worktree_path)
308
+ stdout, _, status = Dir.chdir(worktree_path) do
309
+ Open3.capture3("git", "rev-parse", "--abbrev-ref", "HEAD")
310
+ end
311
+ return nil unless status.success?
312
+
313
+ branch = stdout.strip
314
+ branch.empty? ? nil : branch
315
+ end
316
+
255
317
  # Check if a branch exists on the remote (origin)
256
318
  # @param project_dir [String] Project root directory
257
319
  # @param branch [String] Branch name to check
@@ -765,6 +765,76 @@ devcontainer:
765
765
  # - "api.example.com"
766
766
  # - "registry.example.com"
767
767
 
768
+ # Work Loop Configuration
769
+ # Configures deterministic commands that run during work loops
770
+ work_loop:
771
+ enabled: true
772
+ max_iterations: 50
773
+ task_completion_required: true
774
+
775
+ # Generic commands array (recommended - replaces category-specific arrays)
776
+ # Each command specifies when it runs: each_unit, full_loop, or on_completion
777
+ commands:
778
+ # Tests run after each work unit iteration
779
+ - name: "unit_tests"
780
+ command: "bundle exec rspec"
781
+ category: "test"
782
+ run_after: "each_unit" # Run after each agent iteration
783
+ required: true # Failure blocks completion
784
+ timeout_seconds: 1800
785
+
786
+ # Linters run after each work unit iteration
787
+ - name: "lint"
788
+ command: "bundle exec standardrb"
789
+ category: "lint"
790
+ run_after: "each_unit"
791
+ required: true
792
+ timeout_seconds: 300
793
+
794
+ # Formatters run only when agent marks work complete
795
+ - name: "format"
796
+ command: "bundle exec standardrb --fix"
797
+ category: "formatter"
798
+ run_after: "on_completion" # Only run when work is marked complete
799
+ required: false # Auto-fixers don't block completion
800
+
801
+ # Build commands run after each iteration
802
+ - name: "typecheck"
803
+ command: "bundle exec srb tc"
804
+ category: "build"
805
+ run_after: "each_unit"
806
+ required: false # Optional - warnings don't block
807
+
808
+ # Custom commands for project-specific validation
809
+ - name: "security_scan"
810
+ command: "bundle exec brakeman -q"
811
+ category: "custom"
812
+ run_after: "full_loop" # Only run at end of full work loop
813
+ required: false
814
+
815
+ # Legacy category-specific arrays (for backwards compatibility)
816
+ # These are merged with the commands array above
817
+ # test_commands: []
818
+ # lint_commands: []
819
+ # formatter_commands: []
820
+ # build_commands: []
821
+ # documentation_commands: []
822
+
823
+ # Output filtering reduces token consumption
824
+ output_filtering:
825
+ enabled: true
826
+ test_mode: "failures_only" # full, failures_only, minimal
827
+ lint_mode: "failures_only"
828
+ test_max_lines: 500
829
+ lint_max_lines: 300
830
+
831
+ # Guards protect sensitive files
832
+ guards:
833
+ enabled: false
834
+ include_files: []
835
+ exclude_files: ["node_modules/**", "dist/**"]
836
+ confirm_files: [] # Files requiring confirmation
837
+
768
838
  # Watch mode configuration
769
839
  # Configures automated monitoring and processing of GitHub issues/PRs
770
840
  watch:
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.34.0
4
+ version: 0.39.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bart Agapinan
@@ -9,6 +9,20 @@ bindir: exe
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: agent-harness
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '0.2'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '0.2'
12
26
  - !ruby/object:Gem::Dependency
13
27
  name: concurrent-ruby
14
28
  requirement: !ruby/object:Gem::Requirement
@@ -261,6 +275,34 @@ dependencies:
261
275
  - - "~>"
262
276
  - !ruby/object:Gem::Version
263
277
  version: '0.12'
278
+ - !ruby/object:Gem::Dependency
279
+ name: sqlite3
280
+ requirement: !ruby/object:Gem::Requirement
281
+ requirements:
282
+ - - "~>"
283
+ - !ruby/object:Gem::Version
284
+ version: '2.0'
285
+ type: :runtime
286
+ prerelease: false
287
+ version_requirements: !ruby/object:Gem::Requirement
288
+ requirements:
289
+ - - "~>"
290
+ - !ruby/object:Gem::Version
291
+ version: '2.0'
292
+ - !ruby/object:Gem::Dependency
293
+ name: temporalio
294
+ requirement: !ruby/object:Gem::Requirement
295
+ requirements:
296
+ - - "~>"
297
+ - !ruby/object:Gem::Version
298
+ version: '1.0'
299
+ type: :runtime
300
+ prerelease: false
301
+ version_requirements: !ruby/object:Gem::Requirement
302
+ requirements:
303
+ - - "~>"
304
+ - !ruby/object:Gem::Version
305
+ version: '1.0'
264
306
  description: The AI-Dev-Pipeline (AIDP) CLI provides a powerful, markdown-driven workflow
265
307
  for software development. It supports in-depth project analysis to understand existing
266
308
  codebases and an execution mode to systematically implement new features.
@@ -275,9 +317,9 @@ files:
275
317
  - README.md
276
318
  - exe/aidp
277
319
  - lib/aidp.rb
320
+ - lib/aidp/agent_harness_adapter.rb
278
321
  - lib/aidp/analyze/error_handler.rb
279
322
  - lib/aidp/analyze/feature_analyzer.rb
280
- - lib/aidp/analyze/json_file_storage.rb
281
323
  - lib/aidp/analyze/kb_inspector.rb
282
324
  - lib/aidp/analyze/progress.rb
283
325
  - lib/aidp/analyze/ruby_maat_integration.rb
@@ -310,8 +352,11 @@ files:
310
352
  - lib/aidp/cli/jobs_command.rb
311
353
  - lib/aidp/cli/mcp_dashboard.rb
312
354
  - lib/aidp/cli/models_command.rb
355
+ - lib/aidp/cli/prompts_command.rb
313
356
  - lib/aidp/cli/providers_command.rb
314
357
  - lib/aidp/cli/security_command.rb
358
+ - lib/aidp/cli/storage_command.rb
359
+ - lib/aidp/cli/temporal_command.rb
315
360
  - lib/aidp/cli/terminal_io.rb
316
361
  - lib/aidp/cli/tools_command.rb
317
362
  - lib/aidp/comment_consolidator.rb
@@ -324,6 +369,28 @@ files:
324
369
  - lib/aidp/core_ext/class_attribute.rb
325
370
  - lib/aidp/daemon/process_manager.rb
326
371
  - lib/aidp/daemon/runner.rb
372
+ - lib/aidp/database.rb
373
+ - lib/aidp/database/migrations.rb
374
+ - lib/aidp/database/repositories/checkpoint_repository.rb
375
+ - lib/aidp/database/repositories/deprecated_models_repository.rb
376
+ - lib/aidp/database/repositories/evaluation_repository.rb
377
+ - lib/aidp/database/repositories/harness_state_repository.rb
378
+ - lib/aidp/database/repositories/job_repository.rb
379
+ - lib/aidp/database/repositories/model_cache_repository.rb
380
+ - lib/aidp/database/repositories/progress_repository.rb
381
+ - lib/aidp/database/repositories/prompt_archive_repository.rb
382
+ - lib/aidp/database/repositories/prompt_feedback_repository.rb
383
+ - lib/aidp/database/repositories/provider_info_cache_repository.rb
384
+ - lib/aidp/database/repositories/provider_metrics_repository.rb
385
+ - lib/aidp/database/repositories/secrets_repository.rb
386
+ - lib/aidp/database/repositories/task_repository.rb
387
+ - lib/aidp/database/repositories/template_version_repository.rb
388
+ - lib/aidp/database/repositories/watch_state_repository.rb
389
+ - lib/aidp/database/repositories/workstream_repository.rb
390
+ - lib/aidp/database/repositories/worktree_repository.rb
391
+ - lib/aidp/database/repository.rb
392
+ - lib/aidp/database/schema.rb
393
+ - lib/aidp/database/storage_migrator.rb
327
394
  - lib/aidp/debug_mixin.rb
328
395
  - lib/aidp/errors.rb
329
396
  - lib/aidp/evaluations.rb
@@ -335,7 +402,6 @@ files:
335
402
  - lib/aidp/execute/checkpoint.rb
336
403
  - lib/aidp/execute/checkpoint_display.rb
337
404
  - lib/aidp/execute/deterministic_unit.rb
338
- - lib/aidp/execute/future_work_backlog.rb
339
405
  - lib/aidp/execute/guard_policy.rb
340
406
  - lib/aidp/execute/instruction_queue.rb
341
407
  - lib/aidp/execute/interactive_repl.rb
@@ -351,6 +417,7 @@ files:
351
417
  - lib/aidp/execute/work_loop_unit_scheduler.rb
352
418
  - lib/aidp/execute/workflow_selector.rb
353
419
  - lib/aidp/firewall/provider_requirements_collector.rb
420
+ - lib/aidp/harness/agent_harness_provider_manager.rb
354
421
  - lib/aidp/harness/ai_decision_engine.rb
355
422
  - lib/aidp/harness/ai_filter_factory.rb
356
423
  - lib/aidp/harness/capability_registry.rb
@@ -378,6 +445,7 @@ files:
378
445
  - lib/aidp/harness/provider_manager.rb
379
446
  - lib/aidp/harness/provider_metrics.rb
380
447
  - lib/aidp/harness/provider_type_checker.rb
448
+ - lib/aidp/harness/rspec_command_optimizer.rb
381
449
  - lib/aidp/harness/rspec_filter_strategy.rb
382
450
  - lib/aidp/harness/ruby_llm_registry.rb
383
451
  - lib/aidp/harness/runner.rb
@@ -392,6 +460,7 @@ files:
392
460
  - lib/aidp/harness/status_display.rb
393
461
  - lib/aidp/harness/test_runner.rb
394
462
  - lib/aidp/harness/thinking_depth_manager.rb
463
+ - lib/aidp/harness/ui.rb
395
464
  - lib/aidp/harness/ui/base.rb
396
465
  - lib/aidp/harness/ui/enhanced_tui.rb
397
466
  - lib/aidp/harness/ui/enhanced_workflow_selector.rb
@@ -411,13 +480,23 @@ files:
411
480
  - lib/aidp/harness/ui/status_manager.rb
412
481
  - lib/aidp/harness/ui/status_widget.rb
413
482
  - lib/aidp/harness/ui/workflow_controller.rb
483
+ - lib/aidp/harness/usage_limit.rb
484
+ - lib/aidp/harness/usage_limit_enforcer.rb
485
+ - lib/aidp/harness/usage_limit_tracker.rb
486
+ - lib/aidp/harness/usage_period.rb
414
487
  - lib/aidp/harness/user_interface.rb
415
488
  - lib/aidp/harness/zfc_condition_detector.rb
416
489
  - lib/aidp/init.rb
490
+ - lib/aidp/init/agent_instructions_generator.rb
417
491
  - lib/aidp/init/devcontainer_generator.rb
418
492
  - lib/aidp/init/doc_generator.rb
419
493
  - lib/aidp/init/project_analyzer.rb
420
494
  - lib/aidp/init/runner.rb
495
+ - lib/aidp/interfaces/activity_monitor_interface.rb
496
+ - lib/aidp/interfaces/binary_checker_interface.rb
497
+ - lib/aidp/interfaces/command_executor_interface.rb
498
+ - lib/aidp/interfaces/logger_interface.rb
499
+ - lib/aidp/interfaces/ui_interface.rb
421
500
  - lib/aidp/jobs/background_runner.rb
422
501
  - lib/aidp/loader.rb
423
502
  - lib/aidp/logger.rb
@@ -430,6 +509,7 @@ files:
430
509
  - lib/aidp/metadata/scanner.rb
431
510
  - lib/aidp/metadata/tool_metadata.rb
432
511
  - lib/aidp/metadata/validator.rb
512
+ - lib/aidp/orchestration_adapter.rb
433
513
  - lib/aidp/planning/analyzers/feedback_analyzer.rb
434
514
  - lib/aidp/planning/builders/agile_plan_builder.rb
435
515
  - lib/aidp/planning/builders/project_plan_builder.rb
@@ -451,19 +531,11 @@ files:
451
531
  - lib/aidp/prompt_optimization/source_code_fragmenter.rb
452
532
  - lib/aidp/prompt_optimization/style_guide_indexer.rb
453
533
  - lib/aidp/prompt_optimization/template_indexer.rb
534
+ - lib/aidp/prompts/feedback_collector.rb
535
+ - lib/aidp/prompts/prompt_template_manager.rb
536
+ - lib/aidp/prompts/template_evolver.rb
537
+ - lib/aidp/prompts/template_version_manager.rb
454
538
  - lib/aidp/provider_manager.rb
455
- - lib/aidp/providers/adapter.rb
456
- - lib/aidp/providers/aider.rb
457
- - lib/aidp/providers/anthropic.rb
458
- - lib/aidp/providers/base.rb
459
- - lib/aidp/providers/capability_registry.rb
460
- - lib/aidp/providers/codex.rb
461
- - lib/aidp/providers/cursor.rb
462
- - lib/aidp/providers/error_taxonomy.rb
463
- - lib/aidp/providers/gemini.rb
464
- - lib/aidp/providers/github_copilot.rb
465
- - lib/aidp/providers/kilocode.rb
466
- - lib/aidp/providers/opencode.rb
467
539
  - lib/aidp/rescue_logging.rb
468
540
  - lib/aidp/safe_directory.rb
469
541
  - lib/aidp/security.rb
@@ -477,8 +549,11 @@ files:
477
549
  - lib/aidp/setup/devcontainer/generator.rb
478
550
  - lib/aidp/setup/devcontainer/parser.rb
479
551
  - lib/aidp/setup/devcontainer/port_manager.rb
552
+ - lib/aidp/setup/in_memory_config_adapter.rb
553
+ - lib/aidp/setup/in_memory_config_manager.rb
480
554
  - lib/aidp/setup/provider_registry.rb
481
555
  - lib/aidp/setup/wizard.rb
556
+ - lib/aidp/shell_executor.rb
482
557
  - lib/aidp/skills.rb
483
558
  - lib/aidp/skills/composer.rb
484
559
  - lib/aidp/skills/loader.rb
@@ -495,6 +570,27 @@ files:
495
570
  - lib/aidp/storage/file_manager.rb
496
571
  - lib/aidp/storage/json_storage.rb
497
572
  - lib/aidp/style_guide/selector.rb
573
+ - lib/aidp/temporal.rb
574
+ - lib/aidp/temporal/activities/analyze_issue_activity.rb
575
+ - lib/aidp/temporal/activities/analyze_sub_task_activity.rb
576
+ - lib/aidp/temporal/activities/base_activity.rb
577
+ - lib/aidp/temporal/activities/create_plan_activity.rb
578
+ - lib/aidp/temporal/activities/create_pr_activity.rb
579
+ - lib/aidp/temporal/activities/create_prompt_activity.rb
580
+ - lib/aidp/temporal/activities/diagnose_failure_activity.rb
581
+ - lib/aidp/temporal/activities/prepare_next_iteration_activity.rb
582
+ - lib/aidp/temporal/activities/record_checkpoint_activity.rb
583
+ - lib/aidp/temporal/activities/run_agent_activity.rb
584
+ - lib/aidp/temporal/activities/run_tests_activity.rb
585
+ - lib/aidp/temporal/activities/run_work_loop_iteration_activity.rb
586
+ - lib/aidp/temporal/configuration.rb
587
+ - lib/aidp/temporal/connection.rb
588
+ - lib/aidp/temporal/worker.rb
589
+ - lib/aidp/temporal/workflow_client.rb
590
+ - lib/aidp/temporal/workflows/base_workflow.rb
591
+ - lib/aidp/temporal/workflows/issue_to_pr_workflow.rb
592
+ - lib/aidp/temporal/workflows/sub_issue_workflow.rb
593
+ - lib/aidp/temporal/workflows/work_loop_workflow.rb
498
594
  - lib/aidp/tooling_detector.rb
499
595
  - lib/aidp/util.rb
500
596
  - lib/aidp/utils/devcontainer_detector.rb
@@ -503,6 +599,7 @@ files:
503
599
  - lib/aidp/watch/auto_merger.rb
504
600
  - lib/aidp/watch/auto_pr_processor.rb
505
601
  - lib/aidp/watch/auto_processor.rb
602
+ - lib/aidp/watch/base_processor.rb
506
603
  - lib/aidp/watch/build_processor.rb
507
604
  - lib/aidp/watch/change_request_processor.rb
508
605
  - lib/aidp/watch/ci_fix_processor.rb
@@ -514,6 +611,7 @@ files:
514
611
  - lib/aidp/watch/plan_generator.rb
515
612
  - lib/aidp/watch/plan_processor.rb
516
613
  - lib/aidp/watch/projects_processor.rb
614
+ - lib/aidp/watch/rebase_processor.rb
517
615
  - lib/aidp/watch/repository_client.rb
518
616
  - lib/aidp/watch/repository_safety_checker.rb
519
617
  - lib/aidp/watch/review_processor.rb
@@ -521,9 +619,13 @@ files:
521
619
  - lib/aidp/watch/reviewers/performance_reviewer.rb
522
620
  - lib/aidp/watch/reviewers/security_reviewer.rb
523
621
  - lib/aidp/watch/reviewers/senior_dev_reviewer.rb
622
+ - lib/aidp/watch/round_robin_scheduler.rb
524
623
  - lib/aidp/watch/runner.rb
525
624
  - lib/aidp/watch/state_store.rb
526
625
  - lib/aidp/watch/sub_issue_creator.rb
626
+ - lib/aidp/watch/work_item.rb
627
+ - lib/aidp/watch/worktree_cleanup_job.rb
628
+ - lib/aidp/watch/worktree_reconciler.rb
527
629
  - lib/aidp/workflows/definitions.rb
528
630
  - lib/aidp/workflows/guided_agent.rb
529
631
  - lib/aidp/workflows/selector.rb
@@ -615,7 +717,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
615
717
  - !ruby/object:Gem::Version
616
718
  version: '0'
617
719
  requirements: []
618
- rubygems_version: 3.6.9
720
+ rubygems_version: 4.0.6
619
721
  specification_version: 4
620
722
  summary: A CLI for AI-driven software development, from analysis to execution.
621
723
  test_files: []