fix(acms): align SkeletonCompressorService.compress() with SkeletonCompressor protocol
CI / push-validation (pull_request) Successful in 32s
CI / helm (pull_request) Successful in 42s
CI / build (pull_request) Successful in 45s
CI / lint (pull_request) Successful in 1m13s
CI / quality (pull_request) Successful in 1m14s
CI / typecheck (pull_request) Successful in 1m27s
CI / security (pull_request) Successful in 1m28s
CI / unit_tests (pull_request) Successful in 7m6s
CI / docker (pull_request) Successful in 1m53s
CI / integration_tests (pull_request) Successful in 21m26s
CI / coverage (pull_request) Successful in 13m44s
CI / status-check (pull_request) Successful in 3s

- Updated SkeletonCompressorService.compress() to accept
  (fragments: tuple[ContextFragment, ...], skeleton_budget: int)
  -> tuple[ContextFragment, ...], matching the SkeletonCompressor protocol
- Removed skeleton_ratio and CompressionResult from the public API
- Added @runtime_checkable to SkeletonCompressor protocol in acms_service.py
- Added structural subtype assertion at module level to prevent future
  protocol drift
- Rewrote all Behave feature scenarios and step definitions to use
  skeleton_budget
- Updated benchmarks and robot helpers to use absolute token budgets
- Removed CompressionResult export from services __init__.py and
  vulture_whitelist.py
- The depth_breadth_projection.py call site already correctly computed
  and passed skeleton_budget

ISSUES CLOSED: #2925
This commit is contained in:
2026-04-05 04:35:19 +00:00
committed by drew
parent 08eb69b71b
commit f2232eec09
10 changed files with 289 additions and 419 deletions
@@ -429,11 +429,6 @@ Feature: Services __init__ lazy-import coverage (round 3)
Then svcov3 the attribute "PersistentSessionService" should be resolved
# ---------- skeleton_compressor ----------
Scenario: svcov3 lazy-load CompressionResult
Given svcov3 a fresh services module
When svcov3 I access lazy attribute "CompressionResult"
Then svcov3 the attribute "CompressionResult" should be resolved
Scenario: svcov3 lazy-load SkeletonCompressorService
Given svcov3 a fresh services module
When svcov3 I access lazy attribute "SkeletonCompressorService"