Skip to content

Fix per-function task limits for generation and repair - #9

Merged
cppbear merged 1 commit into
mainfrom
fix/bounded-function-tasks
Oct 7, 2026
Merged

cppbear merged 1 commit into
mainfrom
fix/bounded-function-tasks

Conversation

@cppbear

@cppbear cppbear commented Oct 7, 2026 •

Copy link
Copy Markdown
Owner

gen --tasks previously bounded only the result queue, while fix --tasks was not passed to its scheduler. Both commands now default to four active focal-function jobs and reject zero before loading model configuration.

  • Generation holds each slot through result delivery; repair holds it through result saving. Candidate validation and repair source/target mutations stay serial while model requests can overlap.
  • Import compilation for both direct and prefix generation runs in the serial consumer, and filtered imports are saved for later integration-test construction.
  • Every worker is joined before cleanup. Failures skip statistics; repair restores sources, retains recovery material on failure, refuses existing backups, and deletes only its own successful backups. Temporary compiler inputs are restored on normal completion or unwinding.
  • Integration coverage reports are removed after every function has read them. The new multi-function integration regression exposed the previous early deletion.

Validation: workspace build and tests passed locally (30 passed, one live-model test ignored), as did the minimal full pipeline and all 11 coverage compatibility cases. Real CLI measurements for N=1,2,4 reached the requested model concurrency and kept compilation serial. Scheduler/failure checks passed locally. The full Linux regression passed on both the branch run and PR run, including consumer-failure queue draining and preservation of unrelated source backups.

The new CI fixture uses a loopback model and real Cargo to cover queue backpressure, both integration generation paths, worker/validation failures, and source/backup preservation. No real model service is called. This change does not alter request retries or timeouts, add cross-process locking, or rewrite Git history.

@cppbear
cppbear marked this pull request as ready for review October 7, 2026 17:23
@cppbear
cppbear merged commit ceaad4b into main Oct 7, 2026
2 checks passed
@cppbear
cppbear deleted the fix/bounded-function-tasks branch October 11, 2026 14:49
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