{ "evidence_kind": "disposable_recovery_clone_g4_g5_full_stack", "recorded_at_kst": "2026-08-07", "privacy": { "contains_personal_information": false, "contains_row_identifiers": false, "raw_smoke_output_retained": false }, "source": { "dump_file": "candidate-post-delta-20260807-172059.dump", "sha256": "d24eaa753526dff77d889ed2a48477d4df4bc2b854878543f89f4db6f6502e32" }, "isolation": { "container": "vignette-recovery-e2e-scratch-20260807", "volume": "vignette_recovery_e2e_scratch_20260807_pgdata", "database_port": 55434, "api_port": 8016, "web_port": 5186, "public_api_touched": false, "public_database_touched": false, "recovery_candidate_touched": false, "nas_touched": false }, "restore": { "exit_on_error": true, "archive_owner_objects_with_wrong_owner": 0, "owner_role": { "login": false, "superuser": false, "bypass_rls": false }, "app_role": { "login": true, "superuser": false, "bypass_rls": false }, "baseline_counts": { "users": 84, "sessions": 30, "turns": 705, "actual_transfer_executions": 0 } }, "browser": { "session_layout_desktop_mobile": { "passed": 8, "failed": 0 }, "calibration_transfer_and_self_directed_loop_desktop_mobile": { "passed": 16, "failed": 0 } }, "runtime": { "g4_completed_session_closed_loop": { "smoke_exit": 0, "prescriptions": 2, "episodes": 6, "attempts": 6, "append_only_teacher_corrections": 1, "ready_runtime_observer_model_runs": 2, "idempotent_retry_verified": true, "cross_cohort_denial_verified": true, "physical_media_calls": 0, "clinical_claim_allowed": false }, "g5_actual_transfer_closed_loop": { "smoke_exit": 0, "execution_events": 1, "model_inferred_events": 1, "independent_observer_events": 1, "instrument_version_1_events": 1, "durable_evidence_bound_events": 1, "distinct_model_runs": 1, "idempotent_retry_verified": true, "wrong_source_and_unended_session_denial_verified": true, "cross_cohort_denial_verified": true, "clinical_claim_allowed": false } }, "runtime_defects_fixed": [ { "area": "g4_runtime_observation", "cause": "pgcrypto function schema was not qualified for the application role search path", "fix": "use app.digest for the durable utterance fingerprint" }, { "area": "g5_jsonb_persistence", "cause": "JSON objects were encoded twice before the registered asyncpg JSONB codec", "fix": "pass JSON-compatible objects to the codec" }, { "area": "g5_transfer_suite_http_boundary", "cause": "nested typed suite was converted to a plain object before the store boundary", "fix": "forward the typed suite explicitly" } ], "focused_backend_verification": { "pytest_passed": 61, "pytest_failed": 0, "ruff": "passed", "py_compile": "passed" } }