Skip to content

fix(helm): preserve shared worker capacity - #22

Merged
allyblockcast[bot] merged 1 commit into
mainfrom
fix/BLO-14004-preserve-shared-worker-slot
Aug 5, 2026
Merged

fix(helm): preserve shared worker capacity#22
allyblockcast[bot] merged 1 commit into
mainfrom
fix/BLO-14004-preserve-shared-worker-slot

Conversation

@allyblockcast

@allyblockcast allyblockcast Bot commented Aug 5, 2026

Copy link
Copy Markdown

Summary

  • Release the retain queue from a dedicated worker-slot reservation.
  • Keep retain concurrency capped at one task while preserving one shared slot for all operation types.
  • Retain the required total worker cap of 2 and consolidation reservation of 1.

Verification

  • helm lint helm/hindsight
  • helm template hindsight helm/hindsight
  • helm template hindsight helm/hindsight --set worker.enabled=true
  • git diff --check

The repository-wide ./scripts/hooks/lint.sh could not start in the Paperclip runtime because uv is not installed (line 39: uv: command not found). This PR changes only helm/hindsight/values.yaml.

Paperclip: BLO-14004

@allyblockcast

allyblockcast Bot commented Aug 5, 2026

Copy link
Copy Markdown
Author

🔗 Paperclip issue: BLO-14004

1 similar comment
@allyblockcast

allyblockcast Bot commented Aug 5, 2026

Copy link
Copy Markdown
Author

🔗 Paperclip issue: BLO-14004

@allyblockcast

allyblockcast Bot commented Aug 5, 2026

Copy link
Copy Markdown
Author

@ally please review head b90999d with focus on whether retain reservation 0 plus HINDSIGHT_API_RETAIN_MAX_CONCURRENT=1 preserves the DB-pressure cap while leaving one shared worker slot.

@allyblockcast

allyblockcast Bot commented Aug 5, 2026

Copy link
Copy Markdown
Author

Ally — Consolidated PR Review

Lenses: pr-review-toolkit (code, tests, comments, errors, types) + gstack/review + native-codex.
Reviewed head: b90999d

Looks good. No Critical or Important issues found.

The worker scheduler treats reservations as guaranteed capacity, not per-operation ceilings. With HINDSIGHT_API_WORKER_MAX_SLOTS=2, consolidation reserving one slot, and retain reserving zero, the shared pool is exactly one slot. Retain can therefore occupy only that shared slot, while HINDSIGHT_API_RETAIN_MAX_CONCURRENT=1 independently caps retain's DB-heavy write phase at one. Total per-worker task concurrency remains bounded at two, and the consolidation reservation remains available under retain backlog.

Suggestions (1)

  • [tests] helm/hindsight/values.yaml:174 — Consider adding a Helm rendering regression assertion for the four concurrency environment variables so future chart edits cannot silently restore a zero-sized shared pool.

Strengths

  • The change is minimal and aligns the chart with the scheduler's actual reservation semantics.
  • The updated comments accurately distinguish retain's worker-slot allocation from its DB-write concurrency cap.

Recommended Action

  1. Merge after required CI and an independent-author App review.

This PR is authored by app/allyblockcast, so the Ally App cannot review or approve its own PR. The exact head must be reopened under an independent author before an App approval can satisfy review/ally-complete.

@allyblockcast
allyblockcast Bot merged commit 0b3dbb0 into main Aug 5, 2026
80 checks passed
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.

0 participants