Skip to content

Throttle concurrent pipeline AI steps#1822

Merged
chubes4 merged 1 commit intomainfrom
feat/ai-step-backpressure
May 7, 2026
Merged

Throttle concurrent pipeline AI steps#1822
chubes4 merged 1 commit intomainfrom
feat/ai-step-backpressure

Conversation

@chubes4
Copy link
Copy Markdown
Member

@chubes4 chubes4 commented May 7, 2026

Summary

  • Adds a site/provider-aware lease limiter for pipeline AI execution so concurrent fetch lanes do not stampede provider transports.
  • Defers above-limit AI steps by rescheduling the same datamachine_execute_step action and parking the job back to pending without marking work failed or processed.
  • Adds focused smoke coverage for acquire/throttle/release behavior, non-AI step isolation, throttle metadata, and retry-policy preservation.

Tests

  • vendor/bin/phpcs inc/Core/Steps/AI/AIStep.php inc/Engine/AI/PipelineAIConcurrencyLimiter.php inc/Engine/AI/PipelineAIConcurrencyLease.php inc/Abilities/Engine/ExecuteStepAbility.php inc/Core/PluginSettings.php tests/ai-step-backpressure-smoke.php
  • php -l inc/Engine/AI/PipelineAIConcurrencyLimiter.php && php -l inc/Engine/AI/PipelineAIConcurrencyLease.php && php -l inc/Core/Steps/AI/AIStep.php && php -l inc/Abilities/Engine/ExecuteStepAbility.php && php -l tests/ai-step-backpressure-smoke.php
  • php tests/ai-step-backpressure-smoke.php
  • php tests/job-retry-policy-smoke.php

Caveats

  • Verified with focused pure-PHP smoke coverage; not deployed and no live 3-flow burn-in was run from this worktree.

AI assistance

  • AI assistance: Yes
  • Tool(s): OpenCode (openai/gpt-5.5)
  • Used for: Adding pipeline AI concurrency/backpressure and tests. Chris remains responsible for review and merge.

@chubes4 chubes4 merged commit dab855d into main May 7, 2026
2 of 3 checks passed
@chubes4 chubes4 deleted the feat/ai-step-backpressure branch May 7, 2026 00:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant