Record local VLM provider proof

This commit is contained in:
Svrnty
2026-06-19 16:18:45 -04:00
parent 8502bd9f17
commit 5cc5d225c7
3 changed files with 176 additions and 0 deletions
@@ -0,0 +1,69 @@
{
"schema": "svrnty-vision.bte-product-ready-local-vlm-provider-proof.v1",
"timestamp": "2026-06-19T20:16:43Z",
"work_item_id": "SVRNTY-VISION-WORK-008",
"route": "svrnty-vision",
"goal": "Prove the configured local VLM provider is reachable for the BTE Product Ready provider-call chain without claiming readiness.",
"approval": {
"name": "BTE Product Ready local VLM provider proof refresh",
"expires_after_report": true
},
"provider_route_resolution": {
"registered_ollama_provider_route_found": false,
"adapter_owner_route_used_for_proof": "svrnty-vision",
"reason": "svrnty-vision owns the configured VLM adapter endpoint used by BTE through /vlm/analyze"
},
"configured_provider": {
"kind": "local_ollama_openai_compatible",
"base_url": "http://100.88.167.87:11434",
"expected_model": "qwen3-vl:32b"
},
"health_proof": {
"ollama_tags": {
"url": "http://100.88.167.87:11434/api/tags",
"http_status": 200,
"duration_seconds": 0.004933,
"expected_model_present": true
},
"openai_models": {
"url": "http://100.88.167.87:11434/v1/models",
"http_status": 200,
"duration_seconds": 0.001439,
"expected_model_present": true
}
},
"gateway_recheck": {
"host_healthz": {
"url": "http://localhost:8092/healthz",
"http_status": 200,
"duration_seconds": 0.001575,
"body_status": "ok",
"version": "0.1.0"
},
"bte_runtime_namespace_healthz": {
"url": "http://localhost:8092/healthz",
"http_status": 200,
"duration_seconds": 0.000823,
"body_status": "ok",
"version": "0.1.0"
}
},
"downstream_bte_result_ref": "../bte/docs/goal-runs/bte-product-ready-local-vlm-provider-refresh/bte-work-020-successful-provider-call.json",
"route_validator": {
"command": "python3 tools/validate_svrnty_vision_child.py",
"status": "pass"
},
"tool_effects": {
"provider_health_probe_performed": true,
"provider_start_or_refresh_performed": false,
"direct_model_inference_performed": false,
"gateway_runtime_started": false,
"bte_provider_call_performed_by_bte_route": true,
"profile_exposure_changed": false,
"mcp_registered": false,
"archive_delete_performed": false,
"raw_payload_storage_created_by_this_route": false,
"product_ready_claim_made": false
},
"status": "local_vlm_provider_health_proven"
}
@@ -0,0 +1,25 @@
# SVRNTY-VISION-WORK-008 Local VLM Provider Proof
Status: local VLM provider health proven.
Approval: `BTE Product Ready local VLM provider proof refresh`.
Proof:
- No separate registered Ollama provider route was found; `svrnty-vision` owns the adapter endpoint used by BTE through `/vlm/analyze`.
- `GET http://100.88.167.87:11434/api/tags`: HTTP `200`; `qwen3-vl:32b` present.
- `GET http://100.88.167.87:11434/v1/models`: HTTP `200`; `qwen3-vl:32b` present.
- `GET http://localhost:8092/healthz`: HTTP `200`, status `ok`, version `0.1.0`.
- From the BTE runtime namespace, `GET http://localhost:8092/healthz`: HTTP `200`, status `ok`, version `0.1.0`.
Boundary:
- No provider start or refresh was needed.
- No direct model inference was performed from this route.
- No credentials, secrets, raw model payloads, or image payloads were recorded.
- No Profile Exposure, MCP registration, archive/delete, raw payload storage, release claim, or Product Ready claim happened.
Validators:
- `python3 tools/validate_svrnty_vision_child.py`: PASS.
- `python3 tools/validate_svrnty_vision_bte_local_vlm_provider_proof.py`: PASS.
@@ -0,0 +1,82 @@
#!/usr/bin/env python3
"""Validate the Svrnty Vision local VLM provider proof packet."""
from __future__ import annotations
import json
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
PROOF = ROOT / "docs/goal-runs/bte-product-ready-local-vlm-provider-refresh/svrnty-vision-work-008-local-vlm-provider-proof.json"
MD = ROOT / "docs/goal-runs/bte-product-ready-local-vlm-provider-refresh/svrnty-vision-work-008-local-vlm-provider-proof.md"
def require(condition: bool, errors: list[str], message: str) -> None:
if not condition:
errors.append(message)
def main() -> int:
errors: list[str] = []
proof = json.loads(PROOF.read_text(encoding="utf-8"))
md = MD.read_text(encoding="utf-8")
require(proof.get("schema") == "svrnty-vision.bte-product-ready-local-vlm-provider-proof.v1", errors, "schema")
require(proof.get("work_item_id") == "SVRNTY-VISION-WORK-008", errors, "work_item_id")
require(proof.get("route") == "svrnty-vision", errors, "route")
route = proof.get("provider_route_resolution", {})
require(route.get("registered_ollama_provider_route_found") is False, errors, "registered_route")
require(route.get("adapter_owner_route_used_for_proof") == "svrnty-vision", errors, "adapter_owner")
provider = proof.get("configured_provider", {})
require(provider.get("expected_model") == "qwen3-vl:32b", errors, "expected_model")
health = proof.get("health_proof", {})
for key in ("ollama_tags", "openai_models"):
probe = health.get(key, {})
require(probe.get("http_status") == 200, errors, f"{key}:http_status")
require(probe.get("expected_model_present") is True, errors, f"{key}:model_present")
gateway = proof.get("gateway_recheck", {})
for key in ("host_healthz", "bte_runtime_namespace_healthz"):
probe = gateway.get(key, {})
require(probe.get("http_status") == 200 and probe.get("body_status") == "ok", errors, f"{key}:healthz")
effects = proof.get("tool_effects", {})
require(effects.get("provider_health_probe_performed") is True, errors, "provider_health_probe")
require(effects.get("bte_provider_call_performed_by_bte_route") is True, errors, "bte_provider_call")
for key in (
"provider_start_or_refresh_performed",
"direct_model_inference_performed",
"gateway_runtime_started",
"profile_exposure_changed",
"mcp_registered",
"archive_delete_performed",
"raw_payload_storage_created_by_this_route",
"product_ready_claim_made",
):
require(effects.get(key) is False, errors, f"forbidden_effect:{key}")
for snippet in (
"local VLM provider health proven",
"qwen3-vl:32b",
"No direct model inference",
"No credentials",
"Product Ready claim",
):
require(snippet in md, errors, f"md_missing:{snippet}")
result = {
"ok": not errors,
"validator": "svrnty-vision-bte-local-vlm-provider-proof-v1",
"checked": [str(PROOF.relative_to(ROOT)), str(MD.relative_to(ROOT))],
"errors": errors,
}
print(json.dumps(result, indent=2))
return 0 if not errors else 1
if __name__ == "__main__":
raise SystemExit(main())