Files
jobtrackingapp/docs/redesign/phase-7/p7-08/evidence/utc-results.json
T

815 lines
37 KiB
JSON

{
"schemaVersion": 1,
"checkpoint": "P7-08",
"slice": "Separate operation/notification UTC transport repair",
"recordedUtc": "2026-10-16T16:43:19.072716+00:00",
"status": "LOCAL_CONTROLLER_SQLITE_SCOPE_CONDITIONAL_GO_HTTP_AND_PUSH_PENDING",
"problem": "Fresh SQLite materialization loses DateTime.Kind; current Web JSON omits Z on fields defined as UTC, allowing browsers to interpret an instant as local time.",
"change": "Label existing stored UTC ticks only in seven DTO projections with DateTime.SpecifyKind(...,Utc); preserve nullable values and every public/private boundary. No timezone conversion, storage/schema/provider/authorization/queue change.",
"sources": [
{
"path": "JobTrackerApi/Controllers/OperationsController.cs",
"bytes": 5810,
"sha256": "a2a38aee1d23c36f3cec617f1537f73d35639542087d4c1e5e7fb65f227440e2",
"canonicalLfSha256": "b1dacc6acf74dc3219bb7b5f13517d2e7edd7b9eb93297e8823dc1a90e0cbbd4"
},
{
"path": "JobTrackerApi.Tests/OperationsControllerTests.cs",
"bytes": 14599,
"sha256": "06d6f91b70af4e1e98fe67246a76a9084d22a4050667295349a14c4d520c8e75",
"canonicalLfSha256": "0b174f8f28ce98e1a7dacb121e80ca53e851bebced088f9388f7ce716af71800"
}
],
"evidence": [
{
"name": "p708-utc-red-20261016T163410Z",
"command": {
"command": [
"rtk",
"proxy",
"C:/Users/Connor/.dotnet/dotnet.exe",
"test",
"JobTrackerApi.Tests/JobTrackerApi.Tests.csproj",
"--configuration",
"Release",
"--no-restore",
"--filter",
"FullyQualifiedName~OperationsControllerTests",
"--logger",
"trx;LogFileName=career.trx",
"--results-directory",
"E:\\Storage\\Projects\\Active\\Job tracker\\.artifacts\\phase7\\current\\backend-career\\p708-utc-red-20261016T163410Z"
],
"startedUtc": "2026-10-16T16:34:10.428105+00:00",
"finishedUtc": "2026-10-16T16:34:31.629894+00:00",
"exitCode": 1,
"logSha256": "c9552d40c81edcd63018c6059ea1ded8c43d4a741d852a2fd29c27f19922eeb2",
"counts": {
"total": 4,
"passed": 3,
"failed": 1,
"notExecuted": 0
},
"resultSha256": "f4d3c2e06b9a4801ab0f7a77e03e2ef51ba6218ec1977ea576fa001059324e10"
},
"raw": [
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-red-20261016T163410Z/command.json",
"bytes": 893,
"sha256": "a98c302a0b0a7353b451878b56f1e01cedd873d3e2c9dd95682fa00260e39870"
},
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-red-20261016T163410Z/career.trx",
"bytes": 10389,
"sha256": "f4d3c2e06b9a4801ab0f7a77e03e2ef51ba6218ec1977ea576fa001059324e10"
},
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-red-20261016T163410Z/career.log",
"bytes": 2431,
"sha256": "c9552d40c81edcd63018c6059ea1ded8c43d4a741d852a2fd29c27f19922eeb2"
}
],
"results": [
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Operation_and_notification_DTOs_preserve_all_UTC_instants_after_SQLite_roundtrips",
"outcome": "Failed",
"startUtc": "2026-10-16T18:34:31.1502359+02:00",
"endUtc": "2026-10-16T18:34:31.1502360+02:00",
"errors": [
"Assert.EndsWith() Failure: String end does not match\r\nString: \"2026-10-16T08:09:10.1234567\"\r\nExpected end: \"Z\""
]
},
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Operation_and_notification_endpoints_validate_bounds_and_require_local_auth",
"outcome": "Passed",
"startUtc": "2026-10-16T18:34:31.4264032+02:00",
"endUtc": "2026-10-16T18:34:31.4264038+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Operation_api_lists_mutates_and_hides_other_owner_records",
"outcome": "Passed",
"startUtc": "2026-10-16T18:34:30.9493918+02:00",
"endUtc": "2026-10-16T18:34:30.9494046+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Notification_api_is_owner_scoped_and_read_dismiss_are_idempotent",
"outcome": "Passed",
"startUtc": "2026-10-16T18:34:31.3444921+02:00",
"endUtc": "2026-10-16T18:34:31.3444925+02:00",
"errors": []
}
]
},
{
"name": "p708-utc-green-20261016T163547Z",
"command": {
"command": [
"rtk",
"proxy",
"C:/Users/Connor/.dotnet/dotnet.exe",
"test",
"JobTrackerApi.Tests/JobTrackerApi.Tests.csproj",
"--configuration",
"Release",
"--no-restore",
"--filter",
"FullyQualifiedName~OperationsControllerTests",
"--logger",
"trx;LogFileName=career.trx",
"--results-directory",
"E:\\Storage\\Projects\\Active\\Job tracker\\.artifacts\\phase7\\current\\backend-career\\p708-utc-green-20261016T163547Z"
],
"startedUtc": "2026-10-16T16:35:47.955889+00:00",
"finishedUtc": "2026-10-16T16:35:57.322108+00:00",
"exitCode": 0,
"logSha256": "323d6460a1a60842e42100728600fdb2388fb0d900b22f2c9f54d5063899a5e4",
"counts": {
"total": 4,
"passed": 4,
"failed": 0,
"notExecuted": 0
},
"resultSha256": "e2335d90c22f18533632e962de9c102fbfd6780c21dfe0a897c60c233c48baee"
},
"raw": [
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-green-20261016T163547Z/command.json",
"bytes": 895,
"sha256": "730210eeb8a4130a5a53d6b94a4c083b8d7cb68744338d10065b98b6956f59d5"
},
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-green-20261016T163547Z/career.trx",
"bytes": 7364,
"sha256": "e2335d90c22f18533632e962de9c102fbfd6780c21dfe0a897c60c233c48baee"
},
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-green-20261016T163547Z/career.log",
"bytes": 982,
"sha256": "323d6460a1a60842e42100728600fdb2388fb0d900b22f2c9f54d5063899a5e4"
}
],
"results": [
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Notification_api_is_owner_scoped_and_read_dismiss_are_idempotent",
"outcome": "Passed",
"startUtc": "2026-10-16T18:35:57.0595771+02:00",
"endUtc": "2026-10-16T18:35:57.0595773+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Operation_api_lists_mutates_and_hides_other_owner_records",
"outcome": "Passed",
"startUtc": "2026-10-16T18:35:56.6614171+02:00",
"endUtc": "2026-10-16T18:35:56.6614328+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Operation_and_notification_endpoints_validate_bounds_and_require_local_auth",
"outcome": "Passed",
"startUtc": "2026-10-16T18:35:57.1378130+02:00",
"endUtc": "2026-10-16T18:35:57.1378132+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.OperationsControllerTests.Operation_and_notification_DTOs_preserve_all_UTC_instants_after_SQLite_roundtrips",
"outcome": "Passed",
"startUtc": "2026-10-16T18:35:56.8719219+02:00",
"endUtc": "2026-10-16T18:35:56.8719228+02:00",
"errors": []
}
]
},
{
"name": "p708-utc-consumers-20261016T163614Z",
"command": {
"command": [
"rtk",
"proxy",
"C:/Users/Connor/.dotnet/dotnet.exe",
"test",
"JobTrackerApi.Tests/JobTrackerApi.Tests.csproj",
"--configuration",
"Release",
"--no-build",
"--filter",
"FullyQualifiedName~UserOperationStoreTests|FullyQualifiedName~AiOperationQueueTests|FullyQualifiedName~StrategySnapshotOperationTests|FullyQualifiedName~CvProcessingOperationTests|FullyQualifiedName~ProfileCvControllerTests|FullyQualifiedName~ApiAuthorizationPostureTests|FullyQualifiedName~SessionContextMiddlewareTests",
"--logger",
"trx;LogFileName=career.trx",
"--results-directory",
"E:\\Storage\\Projects\\Active\\Job tracker\\.artifacts\\phase7\\current\\backend-career\\p708-utc-consumers-20261016T163614Z"
],
"startedUtc": "2026-10-16T16:36:14.129488+00:00",
"finishedUtc": "2026-10-16T16:36:18.762446+00:00",
"exitCode": 0,
"logSha256": "9020aa2db04a811442e20caa6f35dbfa6360b311f6120989e8b39f2cc0f6a711",
"counts": {
"total": 73,
"passed": 73,
"failed": 0,
"notExecuted": 0
},
"resultSha256": "688ca8413035ac5b4209dff1a258f301ca7aabdb76efd0366af8cbde7d4e7293"
},
"raw": [
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-consumers-20261016T163614Z/command.json",
"bytes": 1175,
"sha256": "98ab5b12d422c1d3f6c646d7854a6b76c71fe06845db9c37397f1546cd9b4a30"
},
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-consumers-20261016T163614Z/career.trx",
"bytes": 105491,
"sha256": "688ca8413035ac5b4209dff1a258f301ca7aabdb76efd0366af8cbde7d4e7293"
},
{
"path": ".artifacts/phase7/current/backend-career/p708-utc-consumers-20261016T163614Z/career.log",
"bytes": 615,
"sha256": "9020aa2db04a811442e20caa6f35dbfa6360b311f6120989e8b39f2cc0f6a711"
}
],
"results": [
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Approved_fixture_regression_for_new_resume_docx_keeps_contact_and_role_core_fields_stable",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1102645+02:00",
"endUtc": "2026-10-16T18:36:17.1102648+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Running_cancellation_is_acknowledged_or_recovered_after_expiry",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.8052422+02:00",
"endUtc": "2026-10-16T18:36:17.8052423+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ApiAuthorizationPostureTests.Admin_controllers_require_the_admin_role_not_merely_a_signed_in_user",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.7040043+02:00",
"endUtc": "2026-10-16T18:36:15.7040045+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Rewrite_section_can_target_saved_job_context_and_whole_cv",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1090082+02:00",
"endUtc": "2026-10-16T18:36:17.1090083+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Parse_falls_back_to_section_parsing_when_ai_json_is_invalid",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1743047+02:00",
"endUtc": "2026-10-16T18:36:17.1743048+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Deadlines_and_input_bounds_fail_closed",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.9617850+02:00",
"endUtc": "2026-10-16T18:36:16.9617851+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Rewrite_section_returns_ai_service_unavailable_detail_when_ai_health_is_unhealthy",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.7831663+02:00",
"endUtc": "2026-10-16T18:36:16.7831667+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Upload_populates_structured_fields_from_flattened_cv_when_ai_json_is_invalid",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5923912+02:00",
"endUtc": "2026-10-16T18:36:17.5923913+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Approved_fixture_regression_for_cv_txt_keeps_core_fields_stable",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1552622+02:00",
"endUtc": "2026-10-16T18:36:17.1552628+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ApiAuthorizationPostureTests.Every_action_on_the_mixed_auth_controllers_declares_its_own_intent",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.7051261+02:00",
"endUtc": "2026-10-16T18:36:15.7051263+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Parse_keeps_general_fallback_when_classifier_returns_nothing",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.9862009+02:00",
"endUtc": "2026-10-16T18:36:16.9862012+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Concurrent_workers_cannot_claim_the_same_operation",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1442844+02:00",
"endUtc": "2026-10-16T18:36:17.1442845+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Parse_returns_structured_cv_and_persists_it",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.2878061+02:00",
"endUtc": "2026-10-16T18:36:17.2878062+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Upload_accepts_markdown_cv_and_saves_text",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.2598197+02:00",
"endUtc": "2026-10-16T18:36:17.2598202+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.CvProcessingOperationTests.Cancellation_before_claim_and_retry_keep_extraction_history_in_sync",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5126652+02:00",
"endUtc": "2026-10-16T18:36:17.5126653+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Admin_and_missing_sid_cannot_bypass_the_precondition",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6778635+02:00",
"endUtc": "2026-10-16T18:36:15.6778635+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Matching_context_preserves_the_authenticated_owner_for_downstream_code(method: \"DELETE\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6780707+02:00",
"endUtc": "2026-10-16T18:36:15.6780707+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ApiAuthorizationPostureTests.Every_controller_either_requires_authorization_or_is_listed_as_public",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.7030861+02:00",
"endUtc": "2026-10-16T18:36:15.7030864+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Upload_waits_for_review_then_accept_merges_and_applies",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.4434905+02:00",
"endUtc": "2026-10-16T18:36:17.4434910+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Normalized_markdown_parse_preserves_web_developer_bullets_and_skills",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.4841707+02:00",
"endUtc": "2026-10-16T18:36:17.4841708+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.AiOperationQueueTests.Worker_resolves_owner_completes_once_and_creates_persistent_notification",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.6866704+02:00",
"endUtc": "2026-10-16T18:36:17.6866705+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Missing_old_and_forged_contexts_never_reach_an_authenticated_mutation(method: \"POST\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6558172+02:00",
"endUtc": "2026-10-16T18:36:15.6558173+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Claim_filters_unknown_tasks_and_prioritises_interactive_work",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.6263534+02:00",
"endUtc": "2026-10-16T18:36:17.6263535+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.GetRuns_returns_latest_extraction_runs",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.7335111+02:00",
"endUtc": "2026-10-16T18:36:16.7335114+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Deterministic_parse_handles_real_estate_contact_summary_and_jobs",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.6709573+02:00",
"endUtc": "2026-10-16T18:36:16.6709576+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.AiOperationQueueTests.Worker_classifies_retryable_failures_and_rechecks_live_entitlement",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.2540757+02:00",
"endUtc": "2026-10-16T18:36:17.2540759+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Parse_uses_classifier_fallback_when_plain_text_has_no_real_sections",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5243165+02:00",
"endUtc": "2026-10-16T18:36:17.5243166+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Concurrent_duplicate_creation_returns_one_operation",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:18.3788342+02:00",
"endUtc": "2026-10-16T18:36:18.3788343+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Stale_context_also_rejects_reads_but_unbound_bootstrap_is_allowed",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6792003+02:00",
"endUtc": "2026-10-16T18:36:15.6792003+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ApiAuthorizationPostureTests.The_user_owned_controllers_that_used_to_rely_on_the_fallback_policy_are_now_explicit",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.7000784+02:00",
"endUtc": "2026-10-16T18:36:15.7000788+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Terminal_notification_is_single_and_owner_scoped_with_read_and_dismiss_state",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.3881173+02:00",
"endUtc": "2026-10-16T18:36:17.3881173+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Missing_old_and_forged_contexts_never_reach_an_authenticated_mutation(method: \"PATCH\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6523210+02:00",
"endUtc": "2026-10-16T18:36:15.6523434+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Rewrite_section_returns_rewrite_empty_detail_when_ai_health_is_healthy",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.2969225+02:00",
"endUtc": "2026-10-16T18:36:17.2969226+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Parse_uses_classifier_fallback_for_education_blocks_without_real_sections",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.9679892+02:00",
"endUtc": "2026-10-16T18:36:16.9679894+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.AiOperationQueueTests.Worker_records_provider_metadata_for_generation_failures",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.3720136+02:00",
"endUtc": "2026-10-16T18:36:17.3720139+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Reprocess_uses_latest_stored_artifact_and_creates_a_new_run",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5588175+02:00",
"endUtc": "2026-10-16T18:36:17.5588176+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.CvProcessingOperationTests.Upload_is_durable_idempotent_and_stops_at_review_gate",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.7004168+02:00",
"endUtc": "2026-10-16T18:36:17.7004169+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Missing_old_and_forged_contexts_never_reach_an_authenticated_mutation(method: \"PUT\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6561354+02:00",
"endUtc": "2026-10-16T18:36:15.6561355+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Matching_context_preserves_the_authenticated_owner_for_downstream_code(method: \"PUT\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6779910+02:00",
"endUtc": "2026-10-16T18:36:15.6779910+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Background_processing_bypasses_the_http_user_filter_for_the_owned_run",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.2129823+02:00",
"endUtc": "2026-10-16T18:36:17.2129824+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.StrategySnapshotOperationTests.Worker_persists_one_result_and_provider_metadata_then_GET_is_read_only",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.3880901+02:00",
"endUtc": "2026-10-16T18:36:17.3880901+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.AiOperationQueueTests.Admission_is_pro_only_idempotent_bounded_and_contains_no_raw_payload",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5956163+02:00",
"endUtc": "2026-10-16T18:36:17.5956164+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.CvProcessingOperationTests.Deadline_before_claim_fails_the_dormant_extraction_run",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.2904359+02:00",
"endUtc": "2026-10-16T18:36:17.2904360+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.AiOperationQueueTests.Free_and_ai_disabled_users_are_rejected_before_an_operation_is_created",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5134878+02:00",
"endUtc": "2026-10-16T18:36:17.5134879+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Upload_reconstructs_flattened_pdf_cv_before_save",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.9068885+02:00",
"endUtc": "2026-10-16T18:36:16.9068887+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Notification_write_failure_rolls_back_terminal_operation_state",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:18.0879951+02:00",
"endUtc": "2026-10-16T18:36:18.0879951+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ApiAuthorizationPostureTests.The_public_cv_controller_stays_anonymous",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6975430+02:00",
"endUtc": "2026-10-16T18:36:15.6975433+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Parse_uses_forced_ai_normalizer_output_when_enabled",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.3465717+02:00",
"endUtc": "2026-10-16T18:36:17.3465719+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.StrategySnapshotOperationTests.Latest_operation_and_result_are_tenant_scoped",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.6242525+02:00",
"endUtc": "2026-10-16T18:36:17.6242526+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Matching_context_preserves_the_authenticated_owner_for_downstream_code(method: \"GET\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6780497+02:00",
"endUtc": "2026-10-16T18:36:15.6780497+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.StrategySnapshotOperationTests.Invalid_provider_shape_is_retryable_and_does_not_publish_partial_output",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1910896+02:00",
"endUtc": "2026-10-16T18:36:17.1910899+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Multiple_headers_fail_closed",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6777872+02:00",
"endUtc": "2026-10-16T18:36:15.6777873+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Matching_context_preserves_the_authenticated_owner_for_downstream_code(method: \"PATCH\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6779596+02:00",
"endUtc": "2026-10-16T18:36:15.6779597+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Deterministic_parse_handles_flat_resume_contact_and_first_job",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1536570+02:00",
"endUtc": "2026-10-16T18:36:17.1536571+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.StrategySnapshotOperationTests.Producer_returns_202_and_duplicate_click_reuses_the_operation",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5046328+02:00",
"endUtc": "2026-10-16T18:36:17.5046329+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Structured_cv_normalization_separates_job_title_company_and_tasks",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.4521444+02:00",
"endUtc": "2026-10-16T18:36:17.4521448+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.DiscardRun_leaves_profile_unchanged",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.4614189+02:00",
"endUtc": "2026-10-16T18:36:17.4614190+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Expired_lease_retries_then_fails_after_bounded_attempts",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:18.2748744+02:00",
"endUtc": "2026-10-16T18:36:18.2748744+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Upload_uses_ai_normalizer_fallback_when_flattened_text_stays_low_structure",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.4819296+02:00",
"endUtc": "2026-10-16T18:36:17.4819296+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Approved_fixture_regression_for_coolfreecv_resume_keeps_summary_and_bullets_stable",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:16.6724045+02:00",
"endUtc": "2026-10-16T18:36:16.6724046+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.CvProcessingOperationTests.Retryable_provider_failure_keeps_run_queued_and_records_provenance",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1229925+02:00",
"endUtc": "2026-10-16T18:36:17.1229927+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Binary_upload_does_not_fall_back_to_in_process_parsing",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1344801+02:00",
"endUtc": "2026-10-16T18:36:17.1344805+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Anonymous_authentication_flows_remain_available",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6779215+02:00",
"endUtc": "2026-10-16T18:36:15.6779216+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Structured_cv_normalization_hardens_contact_links_locations_and_dates",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1751111+02:00",
"endUtc": "2026-10-16T18:36:17.1751112+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Missing_old_and_forged_contexts_never_reach_an_authenticated_mutation(method: \"DELETE\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6774969+02:00",
"endUtc": "2026-10-16T18:36:15.6774970+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Unexpected_extraction_errors_are_not_exposed_to_users",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.5059355+02:00",
"endUtc": "2026-10-16T18:36:17.5059356+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Failure_retry_completion_and_owner_guards_follow_the_state_machine",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:18.5867075+02:00",
"endUtc": "2026-10-16T18:36:18.5867083+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Structured_cv_normalization_keeps_human_languages_and_drops_skill_noise",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.7970207+02:00",
"endUtc": "2026-10-16T18:36:15.7970216+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Background_processing_rechecks_pro_after_queueing",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.2199833+02:00",
"endUtc": "2026-10-16T18:36:17.2199834+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Upload_rejects_unsupported_extension",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1391065+02:00",
"endUtc": "2026-10-16T18:36:17.1391067+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.SessionContextMiddlewareTests.Matching_context_preserves_the_authenticated_owner_for_downstream_code(method: \"POST\")",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:15.6780232+02:00",
"endUtc": "2026-10-16T18:36:15.6780232+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.UserOperationStoreTests.Create_is_idempotent_within_owner_and_isolated_between_owners",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.9443630+02:00",
"endUtc": "2026-10-16T18:36:17.9443633+02:00",
"errors": []
},
{
"name": "JobTrackerApi.Tests.ProfileCvControllerTests.Normalized_markdown_parse_preserves_real_estate_job_and_language_levels",
"outcome": "Passed",
"startUtc": "2026-10-16T18:36:17.1596299+02:00",
"endUtc": "2026-10-16T18:36:17.1596302+02:00",
"errors": []
}
]
}
],
"reconciliation": {
"redBefore": {
"path": ".artifacts/phase7/p7-08/utc-red-pre/source.json",
"bytes": 859,
"sha256": "0e457e216e5456437c3ba526f473fd64c67dcc6301f8a78be89ebd3cb836bbb8"
},
"redAfter": {
"path": ".artifacts/phase7/p7-08/utc-red-post.json",
"bytes": 762,
"sha256": "7b2f0d4bd7cc7d37e8a20d641099e3b542228cd3da6012ab054c9cde63c1313f"
},
"redInputsHeld": 4,
"greenAndConsumers": {
"path": ".artifacts/phase7/p7-08/utc-green-post.json",
"bytes": 1844,
"sha256": "1fd421aaa40c4c16d0e45512afa2d884f68fbaddcc33691ce18b3e2f0664b8bb"
},
"greenInputsHeld": 5,
"binaries": [
{
"path": "JobTrackerApi/bin/Release/net9.0/JobTrackerApi.dll",
"sha256": "e1d2c1bfc7ba4d9816d5d7b80503e79d2a647ad0ae2f4777e2703508fd32681c"
},
{
"path": "JobTrackerApi.Tests/bin/Release/net9.0/JobTrackerApi.Tests.dll",
"sha256": "425d098903732802b5b304072c6f2e2f4479d74a56cf292d8c152544592dd99a"
}
],
"qualification": "Binary hashes are actual post-run observations following the Release test build; no unchanged-binary checksum across that build is invented. Frontend source changes are outside these backend gates."
},
"covered": [
"Five operation dates and two notification dates use deterministic distinct seven-digit fractional ticks after disposal and fresh SQLite read contexts.",
"Operation Get/List and notification List retain exact14/8 public fields; no private subject/result/provider/model/lease/idempotency exposure.",
"Web-default JSON emits UTC Z and zero offset without changing original ticks. Complete persisted rows remain identical after DTO reads.",
"Cancel/retry retain the same operation ID; cleared lifecycle fields and conflict rules remain. Repeated notice read/dismiss retain their original timestamps and do not mutate the associated task.",
"73 related store/queue/strategy/CV-processing/ProfileCv/authorization/session cases pass against the compiled repair. These are subsets, not additions to the full suite."
],
"limits": [
"Real disk-backed SQLite plus direct-controller Web JSON serialization; this gate does not host HTTP/cookie middleware.",
"Planned actual Program/cookie native journeys must separately verify available UTC fields over HTTP and existing UI consumers. No all-five-date hosted fixture is claimed.",
"No model/provider production equivalent runtime, human/device/output or release acceptance."
],
"inventory": {
"previousBackend": 1053,
"addedOrdinaryCases": 1,
"currentDerivedBackend": 1054,
"qualification": "Original three controller cases strengthened, one new ordinary case; no skips/removals. Last full backend1033 remains inherited untilP7-12."
},
"preservation": {
"groups": 57,
"status": "56 PARTIAL / C11 DEFERRED",
"routes": "Original32 plus approvedDocuments route =33; unchanged by this repair.",
"withheld": "P5-13 remains disabled/unqualified; no qualification/model calls.",
"production": "NO-GO; main unchanged; Phase8 not started."
},
"publication": {
"status": "PENDING_SEPARATE_LOCAL_COMMIT_AND_NORMAL_PUSH",
"qualification": "P7-07 local5a67ec3 and receipt84350b7 normal pushes failed to connect to configured host443. No current live remote equality claim."
},
"hygiene": {
"status": "PASS",
"checkedUtc": "2026-10-16T21:00:05.989530+00:00",
"path": "docs/redesign/phase-7/p7-08/evidence/utc-static-checks.json",
"sha256": "82fb5dae47a23a421d314cbf45d934ae6dcf262b172d8d04cc0376499f0b60f9",
"qualification": "535local links/21documents,57groups/33routes; staged scope remains two backend files plus their reports/status, with unrelated presentation work unstaged."
},
"hashPolicy": "UTF8 LF portable JSON; exact raw artifact hashes retained locally; canonical-LF source hashes qualify Git checkout conversion."
}