Skip to content

Comments

Add fast_build reasoner with speed-optimized pipeline config#4

Closed
AbirAbbas wants to merge 2 commits intomainfrom
feature/831172a7-add-fast-build-reasoner
Closed

Add fast_build reasoner with speed-optimized pipeline config#4
AbirAbbas wants to merge 2 commits intomainfrom
feature/831172a7-add-fast-build-reasoner

Conversation

@AbirAbbas
Copy link
Collaborator

Summary

  • Adds a new fast_build reasoner to swe_af/app.py as a speed-optimized alternative to build(), targeting ~5–10 min turnarounds vs 30+ min for the full build.
  • Refactors build() to delegate its core pipeline logic to a private async helper _run_build(), eliminating code duplication.
  • fast_build() constructs a BuildConfig with all iteration knobs turned to zero/minimum and delegates to _run_build(), with caller-supplied config still able to override fast defaults.
  • All 9 smoke tests in tests/test_fast_build_smoke.py pass, confirming signature parity, fast default values, caller override behavior, and reasoner registration.

Changes

  • swe_af/app.py — Core change: extracted _run_build() private async helper; build() now delegates to it unchanged; new @app.reasoner() fast_build() added with identical 10-parameter signature that merges 12 fast defaults before invoking _run_build().
  • tests/test_fast_build_smoke.py — New smoke test suite (9 tests) covering AC1–AC9: reasoner registration, signature parity, fast config defaults, caller override, non-reasoner status of _run_build, and file-scope constraint.

Fast defaults applied by fast_build()

Config key Fast value Build default
max_review_iterations 0 2
max_retries_per_issue 0 3
max_replans 0 2
enable_replanning False True
max_verify_fix_cycles 0 3
max_coding_iterations 1 3
max_advisor_invocations 0 3
enable_issue_advisor False True
enable_integration_testing False True
agent_max_turns 50 150
agent_timeout_seconds 900 2700
git_init_max_retries 1 3

Test plan

  • pytest tests/test_fast_build_smoke.py -v — all 9 tests should pass
  • Verify fast_build appears in [r['id'] for r in app.reasoners]
  • Smoke-run fast_build on a trivial repo and confirm completion in <10 min
  • Confirm build() behavior is unchanged (full pipeline, default BuildConfig)
  • Confirm caller-supplied config dict overrides fast defaults in fast_build()

🤖 Built with AgentField SWE-AF
🔌 Powered by AgentField

SWE-AF added 2 commits February 18, 2026 17:02
…n_build()

Extracts the build() pipeline body into a private async helper _run_build()
that accepts an already-constructed BuildConfig. Rewrites build() as a thin
wrapper over _run_build() with identical behaviour. Adds fast_build() as a
new @app.reasoner() with the same 10-parameter signature that merges 12
speed-optimised defaults before any caller-supplied config overrides, then
delegates to _run_build(). All changes confined to swe_af/app.py.

Fast defaults: max_review_iterations=0, max_retries_per_issue=0,
max_replans=0, enable_replanning=False, max_verify_fix_cycles=0,
max_coding_iterations=1, max_advisor_invocations=0,
enable_issue_advisor=False, enable_integration_testing=False,
agent_max_turns=50, agent_timeout_seconds=900, git_init_max_retries=1.
@AbirAbbas AbirAbbas closed this Feb 18, 2026
@AbirAbbas AbirAbbas deleted the feature/831172a7-add-fast-build-reasoner branch February 18, 2026 17:14
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