Files
Jonathan KirkwoodandClaude Fable 5 506e6c79bd v0.1.8: two-Spark pipeline + kept-warm serving
- Secondary-Spark models now work in air-gapped mode: the LiteLLM proxy is
  dual-homed onto the default bridge (docker network connect) to reach the
  secondary's published vLLM port; grader containers stay on the --internal
  network with zero egress. The head-only enforcement is replaced by a
  secondary-configured check.
- Extraction runs in parallel with grading when the extractor's model and
  every grader model in the wave sit on different Sparks (separate GPUs).
- Keep-warm: single-wave jobs no longer tear the wave down between decks
  (was a ~6-min 31B reload per deck); a kept-warm wave that fails preflight
  is restarted once. Adjudicator reuses the live wave when its model is
  already serving instead of cycling the shared proxy.
- clear_resident_containers (preJobStopContainers) now stops names on every
  configured Spark; health() reports containers on both Sparks.
- Verified with a mocked dry-run of the full job loop (3 decks: one
  bring-up, zero mid-job teardowns, parallel overlap, stale-wave restart).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-31 15:01:10 -05:00

19 lines
1.0 KiB
TypeScript

import { VersionInfo } from '@start9labs/start-sdk'
/** Two-Spark pipeline + kept-warm serving. ExVer form `<upstream>:<downstream>`. */
export const v_0_1_8 = VersionInfo.of({
version: '0.1.8:0',
releaseNotes:
'Two-Spark grading pipeline: models pinned to the secondary Spark now work ' +
'in air-gapped mode too (the model proxy is dual-homed onto the bridge to ' +
'reach them; grader containers keep zero egress), so the extractor can run ' +
'on one Spark while the grading panel runs on the other — and when they sit ' +
'on different Sparks, extraction and grading of a deck run in parallel. ' +
'Serving is also kept warm across decks: single-wave jobs no longer tear ' +
'the vLLMs down between decks (previously a ~6-minute 31B reload per deck), ' +
'with an automatic restart if a kept-warm model fails preflight. ' +
'preJobStopContainers now stops resident containers on every configured ' +
'Spark, and Serving/Job health shows containers on both Sparks.',
migrations: {},
})