Files
trex-core/docs/srs/Configuration/req-060_max-active-slots-config.md
T
genichinandClaude Opus 4.8 f7d309be71 docs(req): dcy-020 confirm-req(REQ-056~065 Approved) + 기존 REQ supersession change-req
- confirm-req: REQ-056~065 Proposed→Approved (CHG-20260610-02 각). srs/index Register Approved.
- change-req(forward-looking): REQ-002/003/005/006/007 에 dcy-020 재정의/폐기 예정 기록
  (CHG-20260610-01). 현재 코드 불변이라 status Implemented 유지(keep-current);
  실제 폐기/재정의·status 전환은 dcy-020 delivery 배치에서 확정.
  - REQ-002 상태머신/도메인 → REQ-056/057/062
  - REQ-003 테스트 계약 → REQ-056/057
  - REQ-005 일일 preallocation 폐기 → REQ-058(reconcile)/REQ-060(M)
  - REQ-006 persistence 스키마 → REQ-056/062/064
  - REQ-007 admission/intent → REQ-059/061

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 10:32:52 +09:00

3.4 KiB

req-060: 동시 활성 최대치(max_active_slots) per-instance TOML 설정

  • Status: Approved
  • Type: Configuration
  • Priority: High
  • Owner: project maintainers

Intent

  • 동시 활성(holding) 슬롯 최대치 M 을 인스턴스별로 독립 제어하기 위해 per-instance TOML 설정 키로 노출한다. 영구 슬롯 전환으로 폐기되는 TREX_TOTAL_SLOTS(풀 크기)를 대체한다. (dcy-020 FR-2/OQ-6)

Requirement

  • DaemonInstanceConfig(REQ-048 per-instance TOML)에 max_active_slots(정수, M) 키를 추가하고 config/*.toml 에서 읽는다. admission(REQ-059)이 이 값을 capacity 게이트로 사용한다. env(TREX_*)·하드코딩 기본값은 채택하지 않으며, 기존 TREX_TOTAL_SLOTS 는 폐기한다. 미설정 시 부팅 실패 또는 명시적 검증 오류로 처리한다(암묵 기본값 금지).

Acceptance Criteria

  1. Given config/inst.toml 에 max_active_slots = N, When 데몬 기동, Then DaemonInstanceConfig.max_active_slots == N 이고 admission 이 N 을 M 으로 사용한다.
  2. Given max_active_slots 미설정, When 기동, Then 명시적 오류로 거부된다(암묵 기본값 사용 안 함).
  3. Given 두 인스턴스가 서로 다른 max_active_slots, When 각자 기동, Then 인스턴스별 독립 M 으로 동작한다.

Impacted Area

  • Docs: docs/data-model.md/docs/runtime-flows.md(설정), config/instance.example.toml
  • Modules: trex_core/runtime/config.py(DaemonInstanceConfig)
  • Tests: tests/runtime/test_config*.py

Notes

  • REQ-048(per-instance TOML 로더) 계열. TREX_TOTAL_SLOTS 폐기는 REQ-005/REQ-010 영향(change-req 검토).
  • 출처: dcy-020 FR-2, OQ-6.

Change Log

CHG-20260610-01

  • Date: 2026-06-10
  • Author: Justin Ko

Change Summary

  • dcy-020 FR-2/OQ-6 로부터 최초 생성(Proposed). max_active_slots per-instance TOML + TREX_TOTAL_SLOTS 폐기.

Intent

  • 동시 활성 최대치 M 을 인스턴스별 TOML 로 제어하도록 backlog 정규화.

Acceptance Criteria Delta

  • Added: TOML 로딩/미설정 거부/인스턴스별 독립 3개 기준
  • Updated: 없음
  • Removed: 없음

Impacted Area Delta

  • Docs: config/instance.example.toml, baseline 문서
  • Modules: runtime/config.py(DaemonInstanceConfig)
  • Tests: test_config*.py

Delivery Trace Delta

  • Batches: none
  • Releases: none

Revalidation Impact

  • Reverification Needed: no
  • Existing Implementation Invalidated: no
  • Status Recommendation: keep-current
  • Follow-up Action: confirm-req. REQ-048 계열, REQ-005/010(TREX_TOTAL_SLOTS) change-req 검토.

Validation Plan

  • TOML 키 로딩 + 미설정 거부 단위테스트 green.

CHG-20260610-02

  • Date: 2026-06-10
  • Author: Justin Ko

Change Summary

  • Status Proposed → Approved (confirm-req). 필수 필드·구체 AC 충족, source dcy-020(confirmed, handoff 승인)과 모순 없음.

Intent

  • delivery input 으로 승격.

Acceptance Criteria Delta

  • Added: 없음 / Updated: 없음 / Removed: 없음

Impacted Area Delta

  • Docs: docs/srs/index.md (Register Approved) / Modules: 없음 / Tests: 없음

Delivery Trace Delta

  • Batches: none / Releases: none

Revalidation Impact

  • Reverification Needed: no / Existing Implementation Invalidated: no / Status Recommendation: keep-current / Follow-up Action: suggest-batch-reqs / draft-batch.

Validation Plan

  • 승인 후 batch planning 에서 본 REQ AC 를 검증 기준으로 사용.