# Complete - m-agent-task-runtime-target-selector/10+09_target_cap_removal

## 완료 일시

2026-07-26

## 요약

Target별 정적 concurrency cap 제거 후 남은 테스트 호출 계약 drift와 dead semaphore evidence를 2회 리뷰 루프에서 정리했고 최종 판정은 PASS다.

## 루프 이력

| Plan | Review | Verdict | 메모 |
|------|--------|---------|------|
| `plan_local_G07_0.log` | `code_review_cloud_G07_0.log` | FAIL | 제거된 semaphore dict가 11개 테스트 호출에서 `resume_locator`로 오인되고 dead `locked()` evidence가 남아 후속 정리를 요구했다. |
| `plan_local_G05_1.log` | `code_review_cloud_G05_1.log` | PASS | 11개 호출을 현재 함수 계약에 맞추고 retry semaphore 관찰을 제거한 뒤 전체 검증을 통과했다. |

## 구현/정리 내용

- `test_dispatch.py`의 `run_worker`/`run_selfcheck` stale 네 번째 positional 인자 11곳을 제거했다.
- production 경로와 무관한 retry semaphore 및 `locked()` 관찰을 제거하고 retry 횟수와 sleep 횟수 검증은 보존했다.

## 최종 검증

- `python3 - <<'PY' ... AST run_worker/run_selfcheck positional arg 검사 ... PY` - PASS; positional arg가 3개를 넘는 호출 없음.
- `python3 agent-ops/skills/project/orchestrate-agent-task-loop/tests/test_dispatch.py CompletingTargetSelfcheckTest ReviewRetryTest RepetitionLimitTest RouteDecisionPersistenceTest SelectorDispatcherIntegrationTest -v` - PASS; 56 tests.
- `python3 agent-ops/skills/project/orchestrate-agent-task-loop/tests/test_dispatch.py ThroughputQuotaBatchTest BlockerDrainTest -v` - PASS; 11 tests.
- `python3 -m unittest discover -s agent-ops/skills/project/orchestrate-agent-task-loop/tests -p 'test_*.py'` - PASS; 244 tests, 전체 출력 `Semaphore` count=0.
- `python3 -m py_compile agent-ops/skills/project/orchestrate-agent-task-loop/tests/test_dispatch.py` - PASS; exit 0.
- `git diff --check` - PASS; 출력 없음.

## 잔여 Nit

- 없음

## 후속 작업

- 없음
