Upload 6 files
Browse files- CHANGELOG.md +12 -12
- README.md +16 -11
- app.py +2 -0
CHANGELOG.md
CHANGED
|
@@ -1,29 +1,29 @@
|
|
| 1 |
|
| 2 |
-
## v190.
|
| 3 |
|
| 4 |
- Added the missing `write_live_status()` helper to the linked validation worker so validation Jobs no longer crash after Gradio API discovery.
|
| 5 |
- Hardened Active Run terminal rendering so a terminal partial/success/error snapshot cannot be overwritten by stale `running` summary fields during live polling.
|
| 6 |
- Improved canonical timeline phase selection so terminal partial runs focus the Live test/attention phase instead of falling back to Start.
|
| 7 |
|
| 8 |
-
# v190.
|
| 9 |
|
| 10 |
- Writes validation_engine.json and validation_preflight.json before fragile Gradio discovery/payload work.
|
| 11 |
- Guarantees validation_failure_diagnosis.json when linked validation stops before payload resolution.
|
| 12 |
- Fixes replay payload_source provenance to parent_automatic_smoke when backend replay source is present.
|
| 13 |
- Writes terminal summary.json for linked validation success/failure, avoiding stale running summaries.
|
| 14 |
|
| 15 |
-
## v190.
|
| 16 |
|
| 17 |
-
- v190.
|
| 18 |
- The eval archive key/value layout now uses a stable single-column grid with safe wrapping so long bucket names and record paths never collapse into letter-by-letter columns.
|
| 19 |
|
| 20 |
-
## v190.
|
| 21 |
|
| 22 |
- Build Run cards now show linked/manual validation strips from parent metadata (`manual_validation_status` and `linked_validations`) even when the child Validation Run is not present in the Runs Explorer cache.
|
| 23 |
- Runs Explorer remains build-first: linked validations stay summarized on their parent Build Run, while automatic Build Run smoke results remain separate from manual linked validation state.
|
| 24 |
|
| 25 |
|
| 26 |
-
## v190.
|
| 27 |
|
| 28 |
- Uses automatic smoke artefacts as the visible Space Test prefill source when available.
|
| 29 |
- Clears stale dirty validation args when a Build Run is selected from Runs Explorer.
|
|
@@ -31,26 +31,26 @@
|
|
| 31 |
- Writes validation_launch_payload.json in validation runs before the worker resolves/predicts.
|
| 32 |
- Surfaces payload source provenance across UI, backend launch metadata, and worker artefacts.
|
| 33 |
|
| 34 |
-
# v190.
|
| 35 |
|
| 36 |
-
## v190.
|
| 37 |
|
| 38 |
- In Space Test replay mode, the validation worker now loads the parent Build Run's successful automatic smoke artefacts (`generation_smoke.json`, `generation_smoke_payload*.json`) as the canonical request before schema reconstruction.
|
| 39 |
- Added `replay_source.json` and richer `resolved_validation_request.json` / failure diagnosis fields so replay failures can be compared against the parent smoke request.
|
| 40 |
- The Payload stage now records `Payload replayed from parent automatic smoke` instead of remaining pending when replay data exists.
|
| 41 |
|
| 42 |
-
# v190.
|
| 43 |
|
| 44 |
-
## v190.
|
| 45 |
|
| 46 |
- Normalizes linked validation replay payloads against the current Gradio endpoint schema before calling predict().
|
| 47 |
- Preserves typed Gradio choices and converts dropdown/radio numeric-looking args such as 1024 to schema strings such as "1024" when required.
|
| 48 |
- Writes validation_preflight.json, resolved_validation_request.json, schema_coercion.json, and validation_failure_diagnosis.json for every linked validation run.
|
| 49 |
- Keeps Space Test copy linked-only while explaining that the separate validation run remains attached to the selected Build Run.
|
| 50 |
|
| 51 |
-
# v190.
|
| 52 |
|
| 53 |
-
## v190.
|
| 54 |
|
| 55 |
- Treats Space Test Validation as a first-class linked validation workflow.
|
| 56 |
- Adds a single resolved launch payload contract so replay/complete/recover/discovery-first modes only launch when coherent.
|
|
|
|
| 1 |
|
| 2 |
+
## v190.32 β Validation hotfix + terminal UI convergence
|
| 3 |
|
| 4 |
- Added the missing `write_live_status()` helper to the linked validation worker so validation Jobs no longer crash after Gradio API discovery.
|
| 5 |
- Hardened Active Run terminal rendering so a terminal partial/success/error snapshot cannot be overwritten by stale `running` summary fields during live polling.
|
| 6 |
- Improved canonical timeline phase selection so terminal partial runs focus the Live test/attention phase instead of falling back to Start.
|
| 7 |
|
| 8 |
+
# v190.32 β Validation engine startup hardening
|
| 9 |
|
| 10 |
- Writes validation_engine.json and validation_preflight.json before fragile Gradio discovery/payload work.
|
| 11 |
- Guarantees validation_failure_diagnosis.json when linked validation stops before payload resolution.
|
| 12 |
- Fixes replay payload_source provenance to parent_automatic_smoke when backend replay source is present.
|
| 13 |
- Writes terminal summary.json for linked validation success/failure, avoiding stale running summaries.
|
| 14 |
|
| 15 |
+
## v190.32 Eval archive run-scoped reset and layout stability
|
| 16 |
|
| 17 |
+
- v190.32 makes the Active Run eval archive card strictly run-scoped: launching, deleting, or switching Build Runs clears stale eval archive state before the selected run snapshot arrives.
|
| 18 |
- The eval archive key/value layout now uses a stable single-column grid with safe wrapping so long bucket names and record paths never collapse into letter-by-letter columns.
|
| 19 |
|
| 20 |
+
## v190.32 β Runs Explorer linked validation parent metadata
|
| 21 |
|
| 22 |
- Build Run cards now show linked/manual validation strips from parent metadata (`manual_validation_status` and `linked_validations`) even when the child Validation Run is not present in the Runs Explorer cache.
|
| 23 |
- Runs Explorer remains build-first: linked validations stay summarized on their parent Build Run, while automatic Build Run smoke results remain separate from manual linked validation state.
|
| 24 |
|
| 25 |
|
| 26 |
+
## v190.32 β Space Test payload provenance and prefill correctness
|
| 27 |
|
| 28 |
- Uses automatic smoke artefacts as the visible Space Test prefill source when available.
|
| 29 |
- Clears stale dirty validation args when a Build Run is selected from Runs Explorer.
|
|
|
|
| 31 |
- Writes validation_launch_payload.json in validation runs before the worker resolves/predicts.
|
| 32 |
- Surfaces payload source provenance across UI, backend launch metadata, and worker artefacts.
|
| 33 |
|
| 34 |
+
# v190.32 β Replay uses parent smoke artefact as source of truth
|
| 35 |
|
| 36 |
+
## v190.32 β Linked validation replay hardening
|
| 37 |
|
| 38 |
- In Space Test replay mode, the validation worker now loads the parent Build Run's successful automatic smoke artefacts (`generation_smoke.json`, `generation_smoke_payload*.json`) as the canonical request before schema reconstruction.
|
| 39 |
- Added `replay_source.json` and richer `resolved_validation_request.json` / failure diagnosis fields so replay failures can be compared against the parent smoke request.
|
| 40 |
- The Payload stage now records `Payload replayed from parent automatic smoke` instead of remaining pending when replay data exists.
|
| 41 |
|
| 42 |
+
# v190.32 β Linked validation worker schema coercion and replay fix
|
| 43 |
|
| 44 |
+
## v190.32 β Validation worker reliability
|
| 45 |
|
| 46 |
- Normalizes linked validation replay payloads against the current Gradio endpoint schema before calling predict().
|
| 47 |
- Preserves typed Gradio choices and converts dropdown/radio numeric-looking args such as 1024 to schema strings such as "1024" when required.
|
| 48 |
- Writes validation_preflight.json, resolved_validation_request.json, schema_coercion.json, and validation_failure_diagnosis.json for every linked validation run.
|
| 49 |
- Keeps Space Test copy linked-only while explaining that the separate validation run remains attached to the selected Build Run.
|
| 50 |
|
| 51 |
+
# v190.32 β UI/CSS convergence and Space Test validation polish
|
| 52 |
|
| 53 |
+
## v190.32 β Space Test validation reliability
|
| 54 |
|
| 55 |
- Treats Space Test Validation as a first-class linked validation workflow.
|
| 56 |
- Adds a single resolved launch payload contract so replay/complete/recover/discovery-first modes only launch when coherent.
|
README.md
CHANGED
|
@@ -13,23 +13,28 @@ hf_oauth_scopes:
|
|
| 13 |
- read-billing
|
| 14 |
---
|
| 15 |
|
| 16 |
-
## v190.
|
| 17 |
|
| 18 |
-
- v190.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 19 |
- The eval archive key/value layout now uses a stable single-column grid with safe wrapping so long bucket names and record paths never collapse into letter-by-letter columns.
|
| 20 |
|
| 21 |
|
| 22 |
-
## v190.
|
| 23 |
|
| 24 |
-
- v190.
|
| 25 |
|
| 26 |
-
## v190.
|
| 27 |
|
| 28 |
-
- v190.
|
| 29 |
|
| 30 |
-
## v190.
|
| 31 |
|
| 32 |
-
- v190.
|
| 33 |
- Runs Explorer and Run Stats now treat automatic and effective statuses explicitly so manually validated partial builds remain discoverable in both Partial and Validated views.
|
| 34 |
- Space Test is contextualized from the selected Build Run even before pressing Prefill, while remaining linked-only for launches.
|
| 35 |
|
|
@@ -429,19 +434,19 @@ The Active Run progress header now separates pipeline completion from product ve
|
|
| 429 |
|
| 430 |
- v190.9 makes terminal Space Test validation status survive page reloads. Failed, success, partial, and manual validation outcomes override stale `running` launch metadata in the Runs Explorer, delete modal, and progress polling.
|
| 431 |
|
| 432 |
-
## v190.
|
| 433 |
|
| 434 |
- Eval archive records now distinguish automatic verdicts from effective verdicts after linked Space Test validation.
|
| 435 |
- Archived records include anonymized linked-validation, endpoint-discovery and smoke-retry metrics while preserving privacy constraints.
|
| 436 |
- Instance owners can flush all archived eval records from the mounted eval bucket without deleting the eval archive configuration.
|
| 437 |
|
| 438 |
-
## v190.
|
| 439 |
|
| 440 |
- Linked Space Test validations now normalize replay/complete/recover payloads against the current Gradio schema before predict().
|
| 441 |
- Validation runs write explicit preflight, resolved request, schema coercion, and failure diagnosis artifacts for debugging.
|
| 442 |
- Replay from a full-inference-success Build Run should reuse the validated endpoint/payload and coerce Gradio dropdown/radio choices as needed.
|
| 443 |
|
| 444 |
|
| 445 |
-
## v190.
|
| 446 |
|
| 447 |
Linked Space Test validations now write engine/preflight/failure diagnostics before and after Gradio endpoint discovery so payload-resolution failures cannot appear as opaque smoke failures.
|
|
|
|
| 13 |
- read-billing
|
| 14 |
---
|
| 15 |
|
| 16 |
+
## v190.32 Robust linked validation schema parsing
|
| 17 |
|
| 18 |
+
- v190.32 hardens linked Space Test payload resolution when Gradio endpoint schemas contain heterogeneous parameter lists such as bare strings mixed with dict objects. The validation worker now normalizes schema parameters before reading metadata, preventing payload-resolution crashes like `'str' object has no attribute 'get'`.
|
| 19 |
+
- Replay mode now fails fast with a clear launch error if a successful parent automatic-smoke payload cannot be resolved, instead of silently downgrading to endpoint-discovery-first while still presenting itself as replay.
|
| 20 |
+
|
| 21 |
+
## v190.32 Eval archive run-scoped reset and layout stability
|
| 22 |
+
|
| 23 |
+
- v190.32 makes the Active Run eval archive card strictly run-scoped: launching, deleting, or switching Build Runs clears stale eval archive state before the selected run snapshot arrives.
|
| 24 |
- The eval archive key/value layout now uses a stable single-column grid with safe wrapping so long bucket names and record paths never collapse into letter-by-letter columns.
|
| 25 |
|
| 26 |
|
| 27 |
+
## v190.32 Runs Explorer linked validation parent metadata
|
| 28 |
|
| 29 |
+
- v190.32 makes Build Run cards display manual linked validation state directly from parent metadata (`manual_validation_status.json` / `linked_validations.json`), so the summary is visible even when linked Validation Runs are not listed as standalone rows. Automatic smoke status remains separate from manual linked validation status.
|
| 30 |
|
| 31 |
+
## v190.32 Replay uses parent smoke artefact as source of truth
|
| 32 |
|
| 33 |
+
- v190.32 makes linked Space Test replay mode load the parent Build Run's successful automatic smoke artefacts before attempting any schema reconstruction. The validation worker writes `replay_source.json`, `resolved_validation_request.json`, and diagnostics so a replay cannot fail opaquely at the Payload stage.
|
| 34 |
|
| 35 |
+
## v190.32 Linked validation hardening
|
| 36 |
|
| 37 |
+
- v190.32 hardens linked Space Test success/failure paths: parent Build Run updates read API/output metadata from the smoke result, failed manual attempts cannot downgrade an already validated parent, and latency/ZeroGPU recommendations expose their linked-test hardware provenance.
|
| 38 |
- Runs Explorer and Run Stats now treat automatic and effective statuses explicitly so manually validated partial builds remain discoverable in both Partial and Validated views.
|
| 39 |
- Space Test is contextualized from the selected Build Run even before pressing Prefill, while remaining linked-only for launches.
|
| 40 |
|
|
|
|
| 434 |
|
| 435 |
- v190.9 makes terminal Space Test validation status survive page reloads. Failed, success, partial, and manual validation outcomes override stale `running` launch metadata in the Runs Explorer, delete modal, and progress polling.
|
| 436 |
|
| 437 |
+
## v190.32 Eval archive effective outcomes
|
| 438 |
|
| 439 |
- Eval archive records now distinguish automatic verdicts from effective verdicts after linked Space Test validation.
|
| 440 |
- Archived records include anonymized linked-validation, endpoint-discovery and smoke-retry metrics while preserving privacy constraints.
|
| 441 |
- Instance owners can flush all archived eval records from the mounted eval bucket without deleting the eval archive configuration.
|
| 442 |
|
| 443 |
+
## v190.32 Linked validation replay reliability
|
| 444 |
|
| 445 |
- Linked Space Test validations now normalize replay/complete/recover payloads against the current Gradio schema before predict().
|
| 446 |
- Validation runs write explicit preflight, resolved request, schema coercion, and failure diagnosis artifacts for debugging.
|
| 447 |
- Replay from a full-inference-success Build Run should reuse the validated endpoint/payload and coerce Gradio dropdown/radio choices as needed.
|
| 448 |
|
| 449 |
|
| 450 |
+
## v190.32 validation hardening
|
| 451 |
|
| 452 |
Linked Space Test validations now write engine/preflight/failure diagnostics before and after Gradio endpoint discovery so payload-resolution failures cannot appear as opaque smoke failures.
|
app.py
CHANGED
|
@@ -667,6 +667,8 @@ def register_custom_routes(fastapi_app: FastAPI) -> None:
|
|
| 667 |
api_name_for_validation = replay_source.get("api_name") or api_name_for_validation
|
| 668 |
test_args = replay_source.get("test_args") if isinstance(replay_source.get("test_args"), list) else test_args
|
| 669 |
test_kwargs = replay_source.get("test_kwargs") if isinstance(replay_source.get("test_kwargs"), dict) else test_kwargs
|
|
|
|
|
|
|
| 670 |
if space_test_policy.get("requires_endpoint_discovery") and str(api_name_for_validation or "").strip() in {"", "/generate"} and not replay_source:
|
| 671 |
api_name_for_validation = ""
|
| 672 |
# Compatibility anchor: "ui_payload_source": payload.get("payload_source") or ""
|
|
|
|
| 667 |
api_name_for_validation = replay_source.get("api_name") or api_name_for_validation
|
| 668 |
test_args = replay_source.get("test_args") if isinstance(replay_source.get("test_args"), list) else test_args
|
| 669 |
test_kwargs = replay_source.get("test_kwargs") if isinstance(replay_source.get("test_kwargs"), dict) else test_kwargs
|
| 670 |
+
else:
|
| 671 |
+
raise ValueError("Replay validation requires a successful parent automatic smoke payload. Select a Build Run with a completed smoke test, or use Complete/Recover validation instead of Replay.")
|
| 672 |
if space_test_policy.get("requires_endpoint_discovery") and str(api_name_for_validation or "").strip() in {"", "/generate"} and not replay_source:
|
| 673 |
api_name_for_validation = ""
|
| 674 |
# Compatibility anchor: "ui_payload_source": payload.get("payload_source") or ""
|