1
0
Files
homelab-public-context/runtime/latest.json
T
2026-09-17 22:19:25 +00:00

39 lines
26 KiB
JSON

{
"schema_version": 1,
"channel": "homelab-runtime",
"command_id": "SUPPORT-260918-XENFORO-TEMPLATE-MERGE-SERVICE-RCA-495T3R4",
"status": "FAIL",
"rc": 3,
"host": "pve01",
"mode": "read-only",
"component": "xenforo-template-merge-service-rca",
"started_at_utc": "2026-09-17T22:19:22Z",
"finished_at_utc": "2026-09-17T22:19:25Z",
"reference_register_checked": true,
"reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66",
"error_register_checked": true,
"error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0",
"command_sha256": "f66955361fd82d2307ead100b2a5ecc8ef99f53c90131cfb6997170c5140693f",
"duplicate_failed_command_blocked": false,
"block_reason": null,
"execution_started": true,
"change_declared": false,
"result_contract_valid": true,
"result_contract_status": null,
"result_contract_error": null,
"command_rc": 3,
"changes_made": false,
"rollback_started": false,
"rollback_restored": null,
"mutation_outcome": "NO_MUTATION",
"sanitized": true,
"secrets_included": false,
"private_addresses_included": false,
"raw_evidence_retained_locally": true,
"raw_evidence_sha256": "8e37e2561ea1769921a2d635d9d29e56238ab6889f6cc1953a6b5d87931e828d",
"sanitized_output_sha256": "8e37e2561ea1769921a2d635d9d29e56238ab6889f6cc1953a6b5d87931e828d",
"output_truncated_in_json": false,
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
"output": "TPL495T3R4_WRAPPER_BEGIN=true\nERROR_REGISTER_CHECK=OK\nREFERENCE_CHECK=OK\nAUTHORITY_CHECK_SCOPE=READABILITY_ONLY_INCIDENTS_NOT_CLOSED\nTPL495T3R4_BEGIN=true\nMODE=READ_ONLY_MERGE_SERVICE_RCA\nVM211_EXCLUDED=true\nTPL495T3R4_SAFE_REPORT={\"affected\":[\"codevipe.ru\",\"dsmods.ru\",\"gamevipe.ru\",\"hkmods.ru\",\"zakrutim.ru\"],\"outdated_total\":5,\"xf_error_rows_total\":7,\"sites\":[{\"site\":\"codevipe.ru\",\"xf_error_rows\":1,\"board_active\":\"1\",\"outdated_count_repo\":1,\"action_merge_outdated\":{\"descriptor\":{\"exists\":true,\"class\":\"XF\\\\Admin\\\\Controller\\\\TemplateController\",\"public\":true,\"required\":1,\"total\":1,\"params\":[{\"name\":\"params\",\"optional\":false,\"type\":\"XF\\\\Mvc\\\\ParameterBag\"}],\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"source_sha256\":\"1379d227c66f90a1e58acd7d0a3d00af36a7a8a3eaeee728cbb752231f6fcd61\",\"token_skeleton\":\"public function actionMergeOutdated ( ParameterBag $params ) { $this -> setSectionContext ( <str> ) ; $template = $this -> assertTemplateForComparison ( $params -> template_id ) ; $parentTemplate = $template -> ParentTemplate ; if ( ! $parentTemplate -> last_edit_date || $parentTemplate -> last_edit_date < $template -> last_edit_date ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } $historyRepo = $this -> repository ( TemplateHistoryRepository :: class ) ; $previousVersion = $historyRepo -> getHistoryForMerge ( $template , $parentTemplate ) ; if ( ! $previousVersion ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } if ( $this -> isPost ( ) ) { $merged = $this -> filter ( <str> , <str> ) ; $final = implode ( <str:\\\\n> , $merged ) ; $template -> template = $final ; $template -> last_edit_date = time ( ) ; if ( ! $template -> isChanged ( <str> ) ) { $template -> updateVersionId ( ) ; } $template -> save ( ) ; return $this -> redirect ( $this -> buildLink ( <str> ) ) ; } else { $diff = new Diff3 ( ) ; $diffs = $diff -> findDifferences ( $template -> template , $previousVersion -> template , $parentTemplate -> template ) ; $viewParams = [ <str> => $template , <str> => $parentTemplate , <str> => $previousVersion , <str> => $diffs , ] ; return $this -> view ( <str:XF:Template\\\\MergeOutdated> , <str> , $viewParams ) ; } }\"},\"service_bindings\":[],\"history_receivers\":[\"historyRepo\"]},\"filesystem_hits\":[{\"file\":\"src/XF/Job/TemplateMerge.php\",\"file_sha256\":\"7cac80d14ba46c6889f99d0603eed60b387bdf527458a15e912bddc0015e3a93\",\"definition\":false,\"occurrences\":[{\"line\":89,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"file_sha256\":\"73b31a31b0498882cf599b3bb95d00ec42783d921d720dadd5342f7d6716f060\",\"definition\":false,\"occurrences\":[{\"line\":452,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"definition\":true,\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"definition_hits\":[{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"outdated\":[{\"template_id\":1401,\"type\":\"public\",\"title\":\"extra.less\",\"style_id\":2,\"addon_id\":\"\",\"version_id\":0,\"version_string\":\"\",\"last_edit_date\":1784195301,\"body\":{\"sha256\":\"ca051810957679432c36024c18f3adbf3a087c7a034cd46d72edfffbd4564b6c\",\"bytes\":2396,\"lines\":131},\"outdated_meta\":{\"template_id\":1401,\"parent_version_string\":\"2.0.0 Alpha\",\"parent_last_edit_date\":1721849139,\"outdated_by_version\":1,\"outdated_by_date\":0},\"native_service\":null}]},{\"site\":\"dsmods.ru\",\"xf_error_rows\":1,\"board_active\":\"1\",\"outdated_count_repo\":1,\"action_merge_outdated\":{\"descriptor\":{\"exists\":true,\"class\":\"XF\\\\Admin\\\\Controller\\\\TemplateController\",\"public\":true,\"required\":1,\"total\":1,\"params\":[{\"name\":\"params\",\"optional\":false,\"type\":\"XF\\\\Mvc\\\\ParameterBag\"}],\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"source_sha256\":\"1379d227c66f90a1e58acd7d0a3d00af36a7a8a3eaeee728cbb752231f6fcd61\",\"token_skeleton\":\"public function actionMergeOutdated ( ParameterBag $params ) { $this -> setSectionContext ( <str> ) ; $template = $this -> assertTemplateForComparison ( $params -> template_id ) ; $parentTemplate = $template -> ParentTemplate ; if ( ! $parentTemplate -> last_edit_date || $parentTemplate -> last_edit_date < $template -> last_edit_date ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } $historyRepo = $this -> repository ( TemplateHistoryRepository :: class ) ; $previousVersion = $historyRepo -> getHistoryForMerge ( $template , $parentTemplate ) ; if ( ! $previousVersion ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } if ( $this -> isPost ( ) ) { $merged = $this -> filter ( <str> , <str> ) ; $final = implode ( <str:\\\\n> , $merged ) ; $template -> template = $final ; $template -> last_edit_date = time ( ) ; if ( ! $template -> isChanged ( <str> ) ) { $template -> updateVersionId ( ) ; } $template -> save ( ) ; return $this -> redirect ( $this -> buildLink ( <str> ) ) ; } else { $diff = new Diff3 ( ) ; $diffs = $diff -> findDifferences ( $template -> template , $previousVersion -> template , $parentTemplate -> template ) ; $viewParams = [ <str> => $template , <str> => $parentTemplate , <str> => $previousVersion , <str> => $diffs , ] ; return $this -> view ( <str:XF:Template\\\\MergeOutdated> , <str> , $viewParams ) ; } }\"},\"service_bindings\":[],\"history_receivers\":[\"historyRepo\"]},\"filesystem_hits\":[{\"file\":\"src/XF/Job/TemplateMerge.php\",\"file_sha256\":\"7cac80d14ba46c6889f99d0603eed60b387bdf527458a15e912bddc0015e3a93\",\"definition\":false,\"occurrences\":[{\"line\":89,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"file_sha256\":\"73b31a31b0498882cf599b3bb95d00ec42783d921d720dadd5342f7d6716f060\",\"definition\":false,\"occurrences\":[{\"line\":452,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"definition\":true,\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"definition_hits\":[{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"outdated\":[{\"template_id\":1317,\"type\":\"public\",\"title\":\"extra.less\",\"style_id\":2,\"addon_id\":\"\",\"version_id\":0,\"version_string\":\"\",\"last_edit_date\":1784195301,\"body\":{\"sha256\":\"3898034b75b561c774b41f6e1d8dce66a171fe30c7c210d543b41a8133e42fa2\",\"bytes\":2402,\"lines\":131},\"outdated_meta\":{\"template_id\":1317,\"parent_version_string\":\"2.0.0 Alpha\",\"parent_last_edit_date\":1728727128,\"outdated_by_version\":1,\"outdated_by_date\":0},\"native_service\":null}]},{\"site\":\"gamevipe.ru\",\"xf_error_rows\":1,\"board_active\":\"1\",\"outdated_count_repo\":1,\"action_merge_outdated\":{\"descriptor\":{\"exists\":true,\"class\":\"XF\\\\Admin\\\\Controller\\\\TemplateController\",\"public\":true,\"required\":1,\"total\":1,\"params\":[{\"name\":\"params\",\"optional\":false,\"type\":\"XF\\\\Mvc\\\\ParameterBag\"}],\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"source_sha256\":\"1379d227c66f90a1e58acd7d0a3d00af36a7a8a3eaeee728cbb752231f6fcd61\",\"token_skeleton\":\"public function actionMergeOutdated ( ParameterBag $params ) { $this -> setSectionContext ( <str> ) ; $template = $this -> assertTemplateForComparison ( $params -> template_id ) ; $parentTemplate = $template -> ParentTemplate ; if ( ! $parentTemplate -> last_edit_date || $parentTemplate -> last_edit_date < $template -> last_edit_date ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } $historyRepo = $this -> repository ( TemplateHistoryRepository :: class ) ; $previousVersion = $historyRepo -> getHistoryForMerge ( $template , $parentTemplate ) ; if ( ! $previousVersion ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } if ( $this -> isPost ( ) ) { $merged = $this -> filter ( <str> , <str> ) ; $final = implode ( <str:\\\\n> , $merged ) ; $template -> template = $final ; $template -> last_edit_date = time ( ) ; if ( ! $template -> isChanged ( <str> ) ) { $template -> updateVersionId ( ) ; } $template -> save ( ) ; return $this -> redirect ( $this -> buildLink ( <str> ) ) ; } else { $diff = new Diff3 ( ) ; $diffs = $diff -> findDifferences ( $template -> template , $previousVersion -> template , $parentTemplate -> template ) ; $viewParams = [ <str> => $template , <str> => $parentTemplate , <str> => $previousVersion , <str> => $diffs , ] ; return $this -> view ( <str:XF:Template\\\\MergeOutdated> , <str> , $viewParams ) ; } }\"},\"service_bindings\":[],\"history_receivers\":[\"historyRepo\"]},\"filesystem_hits\":[{\"file\":\"src/XF/Job/TemplateMerge.php\",\"file_sha256\":\"7cac80d14ba46c6889f99d0603eed60b387bdf527458a15e912bddc0015e3a93\",\"definition\":false,\"occurrences\":[{\"line\":89,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"file_sha256\":\"73b31a31b0498882cf599b3bb95d00ec42783d921d720dadd5342f7d6716f060\",\"definition\":false,\"occurrences\":[{\"line\":452,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"definition\":true,\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"definition_hits\":[{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"outdated\":[{\"template_id\":1696,\"type\":\"public\",\"title\":\"extra.less\",\"style_id\":2,\"addon_id\":\"\",\"version_id\":0,\"version_string\":\"\",\"last_edit_date\":1784195301,\"body\":{\"sha256\":\"fde07ae7d5f65a3cdee23b7f90834229c95495fb69db44727345b550441646ab\",\"bytes\":2410,\"lines\":131},\"outdated_meta\":{\"template_id\":1696,\"parent_version_string\":\"2.0.0 Alpha\",\"parent_last_edit_date\":1720986507,\"outdated_by_version\":1,\"outdated_by_date\":0},\"native_service\":null}]},{\"site\":\"hkmods.ru\",\"xf_error_rows\":1,\"board_active\":\"1\",\"outdated_count_repo\":1,\"action_merge_outdated\":{\"descriptor\":{\"exists\":true,\"class\":\"XF\\\\Admin\\\\Controller\\\\TemplateController\",\"public\":true,\"required\":1,\"total\":1,\"params\":[{\"name\":\"params\",\"optional\":false,\"type\":\"XF\\\\Mvc\\\\ParameterBag\"}],\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"source_sha256\":\"1379d227c66f90a1e58acd7d0a3d00af36a7a8a3eaeee728cbb752231f6fcd61\",\"token_skeleton\":\"public function actionMergeOutdated ( ParameterBag $params ) { $this -> setSectionContext ( <str> ) ; $template = $this -> assertTemplateForComparison ( $params -> template_id ) ; $parentTemplate = $template -> ParentTemplate ; if ( ! $parentTemplate -> last_edit_date || $parentTemplate -> last_edit_date < $template -> last_edit_date ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } $historyRepo = $this -> repository ( TemplateHistoryRepository :: class ) ; $previousVersion = $historyRepo -> getHistoryForMerge ( $template , $parentTemplate ) ; if ( ! $previousVersion ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } if ( $this -> isPost ( ) ) { $merged = $this -> filter ( <str> , <str> ) ; $final = implode ( <str:\\\\n> , $merged ) ; $template -> template = $final ; $template -> last_edit_date = time ( ) ; if ( ! $template -> isChanged ( <str> ) ) { $template -> updateVersionId ( ) ; } $template -> save ( ) ; return $this -> redirect ( $this -> buildLink ( <str> ) ) ; } else { $diff = new Diff3 ( ) ; $diffs = $diff -> findDifferences ( $template -> template , $previousVersion -> template , $parentTemplate -> template ) ; $viewParams = [ <str> => $template , <str> => $parentTemplate , <str> => $previousVersion , <str> => $diffs , ] ; return $this -> view ( <str:XF:Template\\\\MergeOutdated> , <str> , $viewParams ) ; } }\"},\"service_bindings\":[],\"history_receivers\":[\"historyRepo\"]},\"filesystem_hits\":[{\"file\":\"src/XF/Job/TemplateMerge.php\",\"file_sha256\":\"7cac80d14ba46c6889f99d0603eed60b387bdf527458a15e912bddc0015e3a93\",\"definition\":false,\"occurrences\":[{\"line\":89,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"file_sha256\":\"73b31a31b0498882cf599b3bb95d00ec42783d921d720dadd5342f7d6716f060\",\"definition\":false,\"occurrences\":[{\"line\":452,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"definition\":true,\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"definition_hits\":[{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"outdated\":[{\"template_id\":2021,\"type\":\"public\",\"title\":\"extra.less\",\"style_id\":2,\"addon_id\":\"\",\"version_id\":0,\"version_string\":\"\",\"last_edit_date\":1784195301,\"body\":{\"sha256\":\"2339326596eb8f77111df70fa4336809e67615942b4b7b1afb2777d8ee447bd3\",\"bytes\":2422,\"lines\":131},\"outdated_meta\":{\"template_id\":2021,\"parent_version_string\":\"2.0.0 Alpha\",\"parent_last_edit_date\":1691944582,\"outdated_by_version\":1,\"outdated_by_date\":0},\"native_service\":null}]},{\"site\":\"kingofwolk.ru\",\"xf_error_rows\":1,\"board_active\":\"1\",\"outdated_count_repo\":0,\"action_merge_outdated\":{\"descriptor\":{\"exists\":true,\"class\":\"XF\\\\Admin\\\\Controller\\\\TemplateController\",\"public\":true,\"required\":1,\"total\":1,\"params\":[{\"name\":\"params\",\"optional\":false,\"type\":\"XF\\\\Mvc\\\\ParameterBag\"}],\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"source_sha256\":\"1379d227c66f90a1e58acd7d0a3d00af36a7a8a3eaeee728cbb752231f6fcd61\",\"token_skeleton\":\"public function actionMergeOutdated ( ParameterBag $params ) { $this -> setSectionContext ( <str> ) ; $template = $this -> assertTemplateForComparison ( $params -> template_id ) ; $parentTemplate = $template -> ParentTemplate ; if ( ! $parentTemplate -> last_edit_date || $parentTemplate -> last_edit_date < $template -> last_edit_date ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } $historyRepo = $this -> repository ( TemplateHistoryRepository :: class ) ; $previousVersion = $historyRepo -> getHistoryForMerge ( $template , $parentTemplate ) ; if ( ! $previousVersion ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } if ( $this -> isPost ( ) ) { $merged = $this -> filter ( <str> , <str> ) ; $final = implode ( <str:\\\\n> , $merged ) ; $template -> template = $final ; $template -> last_edit_date = time ( ) ; if ( ! $template -> isChanged ( <str> ) ) { $template -> updateVersionId ( ) ; } $template -> save ( ) ; return $this -> redirect ( $this -> buildLink ( <str> ) ) ; } else { $diff = new Diff3 ( ) ; $diffs = $diff -> findDifferences ( $template -> template , $previousVersion -> template , $parentTemplate -> template ) ; $viewParams = [ <str> => $template , <str> => $parentTemplate , <str> => $previousVersion , <str> => $diffs , ] ; return $this -> view ( <str:XF:Template\\\\MergeOutdated> , <str> , $viewParams ) ; } }\"},\"service_bindings\":[],\"history_receivers\":[\"historyRepo\"]},\"filesystem_hits\":[{\"file\":\"src/XF/Job/TemplateMerge.php\",\"file_sha256\":\"7cac80d14ba46c6889f99d0603eed60b387bdf527458a15e912bddc0015e3a93\",\"definition\":false,\"occurrences\":[{\"line\":89,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"file_sha256\":\"73b31a31b0498882cf599b3bb95d00ec42783d921d720dadd5342f7d6716f060\",\"definition\":false,\"occurrences\":[{\"line\":452,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"definition\":true,\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"definition_hits\":[{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"outdated\":[]},{\"site\":\"zakrutim.ru\",\"xf_error_rows\":1,\"board_active\":\"1\",\"outdated_count_repo\":1,\"action_merge_outdated\":{\"descriptor\":{\"exists\":true,\"class\":\"XF\\\\Admin\\\\Controller\\\\TemplateController\",\"public\":true,\"required\":1,\"total\":1,\"params\":[{\"name\":\"params\",\"optional\":false,\"type\":\"XF\\\\Mvc\\\\ParameterBag\"}],\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"source_sha256\":\"1379d227c66f90a1e58acd7d0a3d00af36a7a8a3eaeee728cbb752231f6fcd61\",\"token_skeleton\":\"public function actionMergeOutdated ( ParameterBag $params ) { $this -> setSectionContext ( <str> ) ; $template = $this -> assertTemplateForComparison ( $params -> template_id ) ; $parentTemplate = $template -> ParentTemplate ; if ( ! $parentTemplate -> last_edit_date || $parentTemplate -> last_edit_date < $template -> last_edit_date ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } $historyRepo = $this -> repository ( TemplateHistoryRepository :: class ) ; $previousVersion = $historyRepo -> getHistoryForMerge ( $template , $parentTemplate ) ; if ( ! $previousVersion ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } if ( $this -> isPost ( ) ) { $merged = $this -> filter ( <str> , <str> ) ; $final = implode ( <str:\\\\n> , $merged ) ; $template -> template = $final ; $template -> last_edit_date = time ( ) ; if ( ! $template -> isChanged ( <str> ) ) { $template -> updateVersionId ( ) ; } $template -> save ( ) ; return $this -> redirect ( $this -> buildLink ( <str> ) ) ; } else { $diff = new Diff3 ( ) ; $diffs = $diff -> findDifferences ( $template -> template , $previousVersion -> template , $parentTemplate -> template ) ; $viewParams = [ <str> => $template , <str> => $parentTemplate , <str> => $previousVersion , <str> => $diffs , ] ; return $this -> view ( <str:XF:Template\\\\MergeOutdated> , <str> , $viewParams ) ; } }\"},\"service_bindings\":[],\"history_receivers\":[\"historyRepo\"]},\"filesystem_hits\":[{\"file\":\"src/XF/Job/TemplateMerge.php\",\"file_sha256\":\"7cac80d14ba46c6889f99d0603eed60b387bdf527458a15e912bddc0015e3a93\",\"definition\":false,\"occurrences\":[{\"line\":89,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"file_sha256\":\"73b31a31b0498882cf599b3bb95d00ec42783d921d720dadd5342f7d6716f060\",\"definition\":false,\"occurrences\":[{\"line\":452,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"definition\":true,\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"definition_hits\":[{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"outdated\":[{\"template_id\":1921,\"type\":\"public\",\"title\":\"extra.less\",\"style_id\":2,\"addon_id\":\"\",\"version_id\":0,\"version_string\":\"\",\"last_edit_date\":1784195301,\"body\":{\"sha256\":\"9662d1b57f5f6fcd2992fd9d150aeb887c242f792eb750cf6cb458d65b99a12d\",\"bytes\":2435,\"lines\":131},\"outdated_meta\":{\"template_id\":1921,\"parent_version_string\":\"2.0.0 Alpha\",\"parent_last_edit_date\":1692264832,\"outdated_by_version\":1,\"outdated_by_date\":0},\"native_service\":null}]},{\"site\":\"newfi.ru\",\"xf_error_rows\":1,\"board_active\":\"1\",\"outdated_count_repo\":0,\"action_merge_outdated\":{\"descriptor\":{\"exists\":true,\"class\":\"XF\\\\Admin\\\\Controller\\\\TemplateController\",\"public\":true,\"required\":1,\"total\":1,\"params\":[{\"name\":\"params\",\"optional\":false,\"type\":\"XF\\\\Mvc\\\\ParameterBag\"}],\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"source_sha256\":\"1379d227c66f90a1e58acd7d0a3d00af36a7a8a3eaeee728cbb752231f6fcd61\",\"token_skeleton\":\"public function actionMergeOutdated ( ParameterBag $params ) { $this -> setSectionContext ( <str> ) ; $template = $this -> assertTemplateForComparison ( $params -> template_id ) ; $parentTemplate = $template -> ParentTemplate ; if ( ! $parentTemplate -> last_edit_date || $parentTemplate -> last_edit_date < $template -> last_edit_date ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } $historyRepo = $this -> repository ( TemplateHistoryRepository :: class ) ; $previousVersion = $historyRepo -> getHistoryForMerge ( $template , $parentTemplate ) ; if ( ! $previousVersion ) { return $this -> error ( \\\\XF :: phrase ( <str> ) ) ; } if ( $this -> isPost ( ) ) { $merged = $this -> filter ( <str> , <str> ) ; $final = implode ( <str:\\\\n> , $merged ) ; $template -> template = $final ; $template -> last_edit_date = time ( ) ; if ( ! $template -> isChanged ( <str> ) ) { $template -> updateVersionId ( ) ; } $template -> save ( ) ; return $this -> redirect ( $this -> buildLink ( <str> ) ) ; } else { $diff = new Diff3 ( ) ; $diffs = $diff -> findDifferences ( $template -> template , $previousVersion -> template , $parentTemplate -> template ) ; $viewParams = [ <str> => $template , <str> => $parentTemplate , <str> => $previousVersion , <str> => $diffs , ] ; return $this -> view ( <str:XF:Template\\\\MergeOutdated> , <str> , $viewParams ) ; } }\"},\"service_bindings\":[],\"history_receivers\":[\"historyRepo\"]},\"filesystem_hits\":[{\"file\":\"src/XF/Job/TemplateMerge.php\",\"file_sha256\":\"7cac80d14ba46c6889f99d0603eed60b387bdf527458a15e912bddc0015e3a93\",\"definition\":false,\"occurrences\":[{\"line\":89,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Admin/Controller/TemplateController.php\",\"file_sha256\":\"73b31a31b0498882cf599b3bb95d00ec42783d921d720dadd5342f7d6716f060\",\"definition\":false,\"occurrences\":[{\"line\":452,\"sha256\":\"acf4133f395cfc430e8fd41a922367ee843ff80ad9653089d5525859d1ac4b96\"}]},{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"definition\":true,\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"definition_hits\":[{\"file\":\"src/XF/Repository/TemplateHistoryRepository.php\",\"file_sha256\":\"5a3ee2f82eea6014df5a2db82ed37c49820c53abf375fde133884c93fef4a655\",\"occurrences\":[{\"line\":11,\"sha256\":\"62a29cb3534609192eff09eb69949a75b9e6f150b6a77f31e491c28ca9233f22\"}]}],\"outdated\":[]}],\"scope\":\"READ_ONLY_NO_XENFORO_MUTATION\"}\nTPL495T3R4_DECISION=HOLD_XF_ERROR_LOG_NOT_ZERO\nTPL495T3R4_HOLD=7\nHOMELAB_RESULT_CONTRACT={\"version\":1,\"command_id\":\"SUPPORT-260918-XENFORO-TEMPLATE-MERGE-SERVICE-RCA-495T3R4\",\"status\":\"FAIL\",\"changes_made\":false,\"rollback_started\":false,\"rollback_restored\":null}\n"
}