[CON-1511][CON-1510][CON-1624][CON-1661] Align self-test ports, B300 RAM, CUDA diagnostics, and reliability override - #458
Conversation
18c4f2c to
b8b6624
Compare
|
CI note: the Ubuntu/macOS unit jobs fail in the pre-existing test with for the temporary path; the test fails before any CON-1511 code path. Windows unit/integration and all three install-smoke jobs pass. The focused CON-1511 suite passes locally (105 tests). |
|
Correction to the CI note: Ubuntu/macOS unit jobs fail in the pre-existing |
4fca02f to
6756c92
Compare
|
The paid 10x A4000 validation of the coordinated image exposed one companion-CLI presentation gap, fixed in Captured paid behavior
The image correctly emitted: The CLI revision used for that paid run ( CLI follow-upThis commit:
Validation:
The first macOS run had one unrelated wall-clock-only failure in the existing port-range concurrency test: it reached the expected four active workers but took No second paid rental was started for this parser/presentation-only follow-up. The live image behavior, traceback retention, cleanup, and approximately |
|
@robballantyne This is ready for review at exact head |
|
Naming and evidence clarification: Future self-test images now have two release channels only:
Candidate runs should pin The image and CLI also have separate release pipelines: self-test publishes the Evidence correction: the paid This clarification did not merge either PR, publish any production image tag, |
Maintainer action
Merge this PR only after the production image family from
vast-ai/self-test#7 has been
published and its immutable digests verified. Hosts can consume root
vast.pydirectly from
master, so image publication must come first.Summary
artificial 64-port cap.
DEFAULT_SCAN_WORKERS = 64limits concurrency only.min(95% of aggregate VRAM, 2,000,000 MiB)to the system-RAM check inboth packaged
vastaiand deprecated rootvast.py, fixing 8x B300 hosts.vastai/test:self-test-cli-1.2.4-cuda-*productionfamily in both launchers.
keys in structured support-bundle JSON.
external cleanup.
surfaces.
Release pair, image names, and pipelines
Companion image/runtime PR:
vast-ai/self-test#7
The repositories have separate release pipelines:
vast-ai/self-testvalidates, builds, and publishes the Docker images.vast-ai/vast-cliselects a production image for the host CUDA family,launches it, and formats the result. The packaged CLI is released through
Git/PyPI separately; root
vast.pybecomes consumable frommaster.New images use exactly two tag forms:
vastai/test:self-test-cli-<contract>-cuda-<runtime>vastai/test:self-test-cli-<contract>-candidate-<12-lowercase-source-SHA>-cuda-<runtime>For example:
vastai/test:self-test-cli-1.2.4-cuda-12.8vastai/test:self-test-cli-1.2.4-candidate-0123456789ab-cuda-12.8vastai/testis the historical Docker Hub repository name, not a stagingchannel.
cli-1.2.4is the minimum compatible CLI/image contract, not the PyPIpackage version. Historical
self-test-cu128,self-test-v2-*, ticket, PR,feature-prose, and
dogfoodtags remain intact for compatibility and audithistory; they are not used for new releases.
Released CLI code selects only production tags. Candidate images must be
provided explicitly through
--test-imageorVAST_SELF_TEST_IMAGE, preferablyas
vastai/test@sha256:<OCI-index-digest>.PR and branch CI validates source without publishing an image. Image build and
publication require a manual self-test workflow dispatch. Merging either source
PR alone does not publish Docker or PyPI artifacts.
Current coordinated source heads:
9bac1688ac81ed2a9debf981952f8ba39e63a1371150fb6160c15eab0ae50f3aed813bb63531601e1.2.4Validation
git diff --checkpass.cross-platform run is linked by the PR checks below.
validation passed in
run 32760054253.
run 32760097650.
Exact paid evidence and limits
Current CON-1661 exact-head qualification (2026-08-24):
9bac1688ac81ed2a9debf981952f8ba39e63a137.1150fb6160c15eab0ae50f3aed813bb63531601e.1.2.4.vastai/test:self-test-cli-1.2.4-candidate-1150fb6160c1-cuda-12.8.sha256:4d31e29d4a18802192b4bbc406648bf78d0285ff2e91704d312523eba907c157.sha256:dedc88d9d2d9284fc0d47f76c065c4c8d0c6a2e0f8acaa2f3f9b61a56571f44b.38273, pinned offer34224259, 1x RTX 3090, reliability0.7125712, instance48590573.--ignore-reliability, reliability remainedstatus=fail,ignored=true, andignored_by=--ignore-reliability; every other hard preflight passed.stress-ng/gpu-burn; the CLI returnedsuccess=true,stage=complete.$0.007533352779987013./progress.jsonlcli_contractevent was separately retained. The live result recordsdiagnostics.reliability_ignored=trueand the exact image digest; source tests cover image-sideignore_reliability=true, and the paid workload proves the image contract accepted the launch and kept runtime checks enabled.Paid diagnostic evidence predates the current source head:
cudaErrorTooManyPeersrun used CLIb3bcd054dc418b194c7ac0a7c146ccc31af4a9cf, self-test550ee9bddbef23cf480e88ddd2e80df89bb1d824, and image indexsha256:998d828782dad8436803ad5857f86f00b8d8c34c94430dd88e32cd1d383aa69f.cudaErrorContainedrun used CLIf1f4dca4fa6ea0708b0bf61124cc526fb1bf4f7e, self-testad33369ab08f2e18ccd781aab6a999efd1b9f9f8, and image indexsha256:7b23e4e8619edfe7dde3c54ba2271b8065f4b16a505ee3b8a1084a54470f69e9.650f437, indexsha256:7b1e87fc16438d81391431dcfa15f4e811bd07cb0224f2f559d203f09956d81d,was handed unchanged to paid instance
47550175, but image initializationtimed out before the workload began. That run proves the launch and cleanup
path, not live rendering of the latest diagnostic.
Current CLI head adds tested parser, support-bundle, offer pinning,
exact-instance handoff/cleanup, and naming guidance after those rentals. It is
not described as an exact-head paid diagnostic run.
The completed B300 pass also used earlier exact heads: CLI
b3bcd054, image88d26e1, on a 2x B300 machine. The current pair retains and regression-teststhose B300 formulas and paths; no new exact-head B300 rental is claimed.
Release order
the
candidatechannel.main, manually dispatchSelf-test Imageswithchannel=production,cuda_version=all, andpush=true.vast.pycan be consumed directlyfrom
master.At present both PRs remain open, none of the four production tags has been
published, and no PyPI release contains this coordinated CLI mapping.