39 lines
30 KiB
JSON
39 lines
30 KiB
JSON
{
|
||
"schema_version": 1,
|
||
"channel": "homelab-runtime",
|
||
"command_id": "NEWFI-260907-A-PORTAL200-APPLY4FIX1-RCA2",
|
||
"status": "OK",
|
||
"rc": 0,
|
||
"host": "pve01",
|
||
"mode": "read-only",
|
||
"component": "newfi-portal200-template-import-conflict-rca",
|
||
"started_at_utc": "2026-09-07T21:02:36Z",
|
||
"finished_at_utc": "2026-09-07T21:02:54Z",
|
||
"reference_register_checked": true,
|
||
"reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66",
|
||
"error_register_checked": true,
|
||
"error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0",
|
||
"command_sha256": "2f0dbd44e567fc367c6e4a1a605eef8adb7eca4687f5dc4e1ac7e160bc552430",
|
||
"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": 0,
|
||
"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": "ec0d72598f443612f00e95ef360b1e004eb071ed2eab6e62cc57118e7403bd87",
|
||
"sanitized_output_sha256": "ec0d72598f443612f00e95ef360b1e004eb071ed2eab6e62cc57118e7403bd87",
|
||
"output_truncated_in_json": false,
|
||
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
|
||
"output": "RCA2_BEGIN=true\nCOMMAND_ID=NEWFI-260907-A-PORTAL200-APPLY4FIX1-RCA2\nMUTATION_SCOPE=NONE_READ_ONLY\nMUTATIONS_PERFORMED=NO\nERROR_REGISTER_CHECK=OK\nERROR_REGISTER_SHA256=3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0\nREFERENCE_CHECK=OK\nREFERENCE_SHA256=5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66\nAUTHORITY_CHECK_SCOPE=READABILITY_ONLY_INCIDENTS_NOT_CLOSED\nNEWFI_260907_A_PORTAL200_APPLY4FIX1_HISTORY_SHA256=18232adf6297087543f368e45e70f705eb529a09d4c392443d9b28b6376df394\nNEWFI_260907_A_PORTAL200_APPLY4FIX1_STATUS=FAIL\nFAILED_CHANGES_MADE=true\nFAILED_ROLLBACK_STARTED=true\nFAILED_ROLLBACK_RESTORED=false\nFAILED_MUTATION_OUTCOME=ROLLBACK_FAILED\nFAILED_FINAL_DECISION=FAIL_PORTAL200_APPLY4_ROLLBACK_INCOMPLETE\nNEWFI_260907_A_PORTAL200_APPLY4FIX1_RCA1_HISTORY_SHA256=3a5953e2e7a9d3a67edd43047bd53fa6ecaeeec592d651e50ead6b1115439a41\nNEWFI_260907_A_PORTAL200_APPLY4FIX1_RCA1_STATUS=OK\nBASELINE_TEMPLATES_XML={\"bytes\":1461,\"children\":[{\"attrib\":{\"title\":\"newfi_portal\",\"type\":\"public\",\"version_id\":\"1000010\",\"version_string\":\"1.0.0 Alpha 1\"},\"index\":0,\"prefix\":\"\\n<xf:title>Newfi</xf:title>\\n\\n<div class=\\\"block\\\">\\n <div class=\\\"block-container\\\">\\n <div class=\\\"block-body\\\">\\n <div class=\\\"block-row\\\">\\n <h2>Newfi</h2>\\n <p>Закрытое пространство для общения, знаний и материалов сообщества.</p>\\n </div>\\n \",\"tag\":\"template\",\"text_bytes\":1274,\"text_sha256\":\"1f484c8cf6bdeda8fda2974abf8a57f8cc7453fe2a779af7c735afa3b73aa741\"}],\"duplicate_keys\":{},\"label\":\"git-head\",\"root_attrib\":{},\"root_tag\":\"templates\",\"sha256\":\"c29c04f8b937284e821c87957653e87c2f6ac014fac30648a0f6b18e84392adf\"}\nCANDIDATE_TEMPLATES_XML={\"bytes\":10977,\"children\":[{\"attrib\":{\"title\":\"newfi_portal\",\"type\":\"public\",\"version_id\":\"1000010\",\"version_string\":\"1.0.0 Alpha 1\"},\"index\":0,\"prefix\":\"\\n<xf:title>НьюфДом</xf:title>\\n<xf:css src=\\\"newfi_portal.less\\\" />\\n\\n<div class=\\\"newfiPortal\\\" data-newfi-portal200=\\\"1\\\">\\n <section class=\\\"newfiPortal-hero\\\">\\n <div class=\\\"newfiPortal-heroCopy\\\">\\n <div class=\\\"newfiPortal-kicker\\\">Ньюфаундленды · знания · люди\",\"tag\":\"template\",\"text_bytes\":7027,\"text_sha256\":\"2a7b332223b7fb0af18cfb9659d1698603faa79d5d0f63c49359dd6a1c8fbf7a\"},{\"attrib\":{\"title\":\"newfi_portal.less\",\"type\":\"public\",\"version_id\":\"1000010\",\"version_string\":\"1.0.0 Alpha 1\"},\"index\":1,\"prefix\":\"\\n.newfiPortal\\n{\\n\\t--newfi-portal200: 1;\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\tgap: @xf-elementSpacer;\\n}\\n\\n.newfiPortal-hero,\\n.newfiPortal-cta\\n{\\n\\tborder: @xf-borderSize solid fade(@xf-paletteColor2, 20%);\\n\\tborder-radius: @xf-borderRadiusLarge;\\n\\tbackground: li\",\"tag\":\"template\",\"text_bytes\":3634,\"text_sha256\":\"25b1dc49e89ef7615a11cd1023876c4ab9b5f96f90b1fca52a4815bb5992fbe8\"}],\"duplicate_keys\":{},\"label\":\"candidate\",\"root_attrib\":{},\"root_tag\":\"templates\",\"sha256\":\"1650c3d868d4bc47703f1b75f1f179cd25309b2d3b20a2b848e81a4423c00861\"}\nTEMPLATES_XML_UNIFIED_DIFF=[\"--- baseline\",\"+++ candidate\",\"@@ -1,35 +1,392 @@\",\" <?xml version=\\\"1.0\\\" encoding=\\\"utf-8\\\"?>\",\" <templates>\",\" <template type=\\\"public\\\" title=\\\"newfi_portal\\\" version_id=\\\"1000010\\\" version_string=\\\"1.0.0 Alpha 1\\\"><![CDATA[\",\"-<xf:title>Newfi</xf:title>\",\"-\",\"-<div class=\\\"block\\\">\",\"- <div class=\\\"block-container\\\">\",\"- <div class=\\\"block-body\\\">\",\"- <div class=\\\"block-row\\\">\",\"- <h2>Newfi</h2>\",\"- <p>Закрытое пространство для общения, знаний и материалов сообщества.</p>\",\"- </div>\",\"- <div class=\\\"block-row\\\">\",\"- <h3>Общение</h3>\",\"- <p>Основные тематические разделы и обсуждения сообщества.</p>\",\"- <a class=\\\"button\\\" href=\\\"{{ link('forums') }}\\\">Перейти на форум</a>\",\"- </div>\",\"- <div class=\\\"block-row\\\">\",\"- <h3>База знаний</h3>\",\"- <p>Структурированные материалы и полезные ресурсы.</p>\",\"- <a class=\\\"button\\\" href=\\\"{{ link('resources') }}\\\">Открыть базу знаний</a>\",\"- </div>\",\"- <div class=\\\"block-row\\\">\",\"- <h3>Галерея</h3>\",\"- <p>Фотографии и другие медиа-материалы сообщества.</p>\",\"- <a class=\\\"button\\\" href=\\\"{{ link('media') }}\\\">Открыть галерею</a>\",\"+<xf:title>НьюфДом</xf:title>\",\"+<xf:css src=\\\"newfi_portal.less\\\" />\",\"+\",\"+<div class=\\\"newfiPortal\\\" data-newfi-portal200=\\\"1\\\">\",\"+ <section class=\\\"newfiPortal-hero\\\">\",\"+ <div class=\\\"newfiPortal-heroCopy\\\">\",\"+ <div class=\\\"newfiPortal-kicker\\\">Ньюфаундленды · знания · люди</div>\",\"+ <h1>Дом сообщества ньюфаундлендов</h1>\",\"+ <p>Обсуждения, практические материалы, события, фотографии и собаки сообщества — в одной точке входа.</p>\",\"+\",\"+ <div class=\\\"newfiPortal-actions\\\">\",\"+ <a class=\\\"button button--primary\\\" href=\\\"{{ link('forums') }}\\\">К обсуждениям</a>\",\"+ <a class=\\\"button\\\" href=\\\"{{ link('events') }}\\\">События</a>\",\"+ <a class=\\\"button\\\" href=\\\"{{ link('dogs') }}\\\">Собаки</a>\",\" </div>\",\" </div>\",\"+ </section>\",\"+\",\"+ <div class=\\\"newfiPortal-grid\\\">\",\"+ <section class=\\\"newfiPortal-card newfiPortal-card--wide\\\" data-portal-section=\\\"forums\\\">\",\"+ <header class=\\\"newfiPortal-cardHeader\\\">\",\"+ <div>\",\"+ <span class=\\\"newfiPortal-eyebrow\\\">Сообщество</span>\",\"+ <h2>Последние обсуждения</h2>\",\"+ </div>\",\"+ <a href=\\\"{{ link('forums') }}\\\">Все разделы</a>\",\"+ </header>\",\"+\",\"+ <xf:if is=\\\"$portal.forums.hasItems\\\">\",\"+ <div class=\\\"newfiPortal-list\\\">\",\"+ <xf:foreach loop=\\\"$portal.forums.items\\\" value=\\\"$thread\\\">\",\"+ <a class=\\\"newfiPortal-listItem\\\" href=\\\"{{ link('threads', $thread) }}\\\">\",\"+ <strong>{$thread.title}</strong>\",\"+ <span>{$thread.Forum.Node.title}</span>\",\"+ <small><xf:date time=\\\"$thread.last_post_date\\\" /></small>\",\"+ </a>\",\"+ </xf:foreach>\",\"+ </div>\",\"+ <xf:else />\",\"+ <div class=\\\"newfiPortal-empty\\\">Новые темы появятся здесь после начала обсуждений.</div>\",\"+ </xf:if>\",\"+ </section>\",\"+\",\"+ <section class=\\\"newfiPortal-card\\\" data-portal-section=\\\"resources\\\">\",\"+ <header class=\\\"newfiPortal-cardHeader\\\">\",\"+ <div>\",\"+ <span class=\\\"newfiPortal-eyebrow\\\">База знаний</span>\",\"+ <h2>Материалы</h2>\",\"+ </div>\",\"+ </header>\",\"+\",\"+ <xf:if is=\\\"$portal.resources.available\\\">\",\"+ <xf:if is=\\\"$portal.resources.hasItems\\\">\",\"+ <div class=\\\"newfiPortal-list\\\">\",\"+ <xf:foreach loop=\\\"$portal.resources.items\\\" value=\\\"$resource\\\">\",\"+ <a class=\\\"newfiPortal-listItem\\\" href=\\\"{{ link('resources', $resource) }}\\\">\",\"+ <strong>{$resource.title}</strong>\",\"+ <span>{$resource.tag_line}</span>\",\"+ <small><xf:date time=\\\"$resource.last_update\\\" /></small>\",\"+ </a>\",\"+ </xf:foreach>\",\"+ </div>\",\"+ <xf:else />\",\"+ <div class=\\\"newfiPortal-empty\\\">Проверенные материалы появятся здесь после публикации.</div>\",\"+ </xf:if>\",\"+ <a class=\\\"newfiPortal-textLink\\\" href=\\\"{{ link('resources') }}\\\">Открыть базу знаний</a>\",\"+ <xf:else />\",\"+ <div class=\\\"newfiPortal-locked\\\" data-portal-locked=\\\"resources\\\">\",\"+ База знаний доступна участникам с соответствующими правами.\",\"+ </div>\",\"+ </xf:if>\",\"+ </section>\",\"+\",\"+ <section class=\\\"newfiPortal-card\\\" data-portal-section=\\\"events\\\">\",\"+ <header class=\\\"newfiPortal-cardHeader\\\">\",\"+ <div>\",\"+ <span class=\\\"newfiPortal-eyebrow\\\">Календарь</span>\",\"+ <h2>Ближайшие события</h2>\",\"+ </div>\",\"+ <a href=\\\"{{ link('events') }}\\\">Все события</a>\",\"+ </header>\",\"+\",\"+ <xf:if is=\\\"$portal.events.hasItems\\\">\",\"+ <div class=\\\"newfiPortal-list\\\">\",\"+ <xf:foreach loop=\\\"$portal.events.items\\\" value=\\\"$event\\\">\",\"+ <div class=\\\"newfiPortal-listItem newfiPortal-listItem--static\\\">\",\"+ <strong>{$event.title}</strong>\",\"+ <small><xf:date time=\\\"$event.starts_at\\\" /></small>\",\"+ </div>\",\"+ </xf:foreach>\",\"+ </div>\",\"+ <xf:else />\",\"+ <div class=\\\"newfiPortal-empty\\\">Новые выставки и встречи появятся здесь после публикации.</div>\",\"+ </xf:if>\",\"+ </section>\",\"+\",\"+ <section class=\\\"newfiPortal-card\\\" data-portal-section=\\\"dogs\\\">\",\"+ <header class=\\\"newfiPortal-cardHeader\\\">\",\"+ <div>\",\"+ <span class=\\\"newfiPortal-eyebrow\\\">Сообщество</span>\",\"+ <h2>Наши собаки</h2>\",\"+ </div>\",\"+ <a href=\\\"{{ link('dogs') }}\\\">Все собаки</a>\",\"+ </header>\",\"+\",\"+ <xf:if is=\\\"$portal.dogs.hasItems\\\">\",\"+ <div class=\\\"newfiPortal-list\\\">\",\"+ <xf:foreach loop=\\\"$portal.dogs.items\\\" value=\\\"$dog\\\">\",\"+ <div class=\\\"newfiPortal-listItem newfiPortal-listItem--static\\\">\",\"+ <strong>{$dog.full_name ?: $dog.name}</strong>\",\"+ <xf:if is=\\\"$dog.city\\\"><span>{$dog.city}</span></xf:if>\",\"+ </div>\",\"+ </xf:foreach>\",\"+ </div>\",\"+ <xf:else />\",\"+ <div class=\\\"newfiPortal-empty\\\">Карточки собак появятся здесь после заполнения каталога.</div>\",\"+ </xf:if>\",\"+ </section>\",\"+\",\"+ <section class=\\\"newfiPortal-card newfiPortal-card--wide\\\" data-portal-section=\\\"media\\\">\",\"+ <header class=\\\"newfiPortal-cardHeader\\\">\",\"+ <div>\",\"+ <span class=\\\"newfiPortal-eyebrow\\\">Галерея</span>\",\"+ <h2>Свежие фотографии</h2>\",\"+ </div>\",\"+ </header>\",\"+\",\"+ <xf:if is=\\\"$portal.media.available\\\">\",\"+ <xf:if is=\\\"$portal.media.hasItems\\\">\",\"+ <div class=\\\"newfiPortal-mediaList\\\">\",\"+ <xf:foreach loop=\\\"$portal.media.items\\\" value=\\\"$media\\\">\",\"+ <a class=\\\"newfiPortal-mediaItem\\\" href=\\\"{{ link('media', $media) }}\\\">\",\"+ <strong>{$media.title}</strong>\",\"+ <span>{$media.username}</span>\",\"+ <small><xf:date time=\\\"$media.media_date\\\" /></small>\",\"+ </a>\",\"+ </xf:foreach>\",\"+ </div>\",\"+ <xf:else />\",\"+ <div class=\\\"newfiPortal-empty\\\">Фотографии появятся здесь после публикации в галерее.</div>\",\"+ </xf:if>\",\"+ <a class=\\\"newfiPortal-textLink\\\" href=\\\"{{ link('media') }}\\\">Открыть галерею</a>\",\"+ <xf:else />\",\"+ <div class=\\\"newfiPortal-locked\\\" data-portal-locked=\\\"media\\\">\",\"+ Галерея доступна участникам с соответствующими правами.\",\"+ </div>\",\"+ </xf:if>\",\"+ </section>\",\" </div>\",\"+\",\"+ <section class=\\\"newfiPortal-cta\\\">\",\"+ <div>\",\"+ <span class=\\\"newfiPortal-eyebrow\\\">НьюфДом</span>\",\"+ <h2>Полезное начинается с живого сообщества</h2>\",\"+ <p>Задайте вопрос, поделитесь опытом или добавьте материал в подходящий раздел.</p>\",\"+ </div>\",\"+ <a class=\\\"button button--primary\\\" href=\\\"{{ link('forums') }}\\\">Перейти к форуму</a>\",\"+ </section>\",\" </div>\",\"-\",\"-<xf:widget key=\\\"whats_new_new_posts\\\" />\",\"-<xf:widget key=\\\"xfrm_whats_new_overview_new_resources\\\" />\",\"+]]></template>\",\"+\",\"+ <template type=\\\"public\\\" title=\\\"newfi_portal.less\\\" version_id=\\\"1000010\\\" version_string=\\\"1.0.0 Alpha 1\\\"><![CDATA[\",\"+.newfiPortal\",\"+{\",\"+\\t--newfi-portal200: 1;\",\"+\\tdisplay: flex;\",\"+\\tflex-direction: column;\",\"+\\tgap: @xf-elementSpacer;\",\"+}\",\"+\",\"+.newfiPortal-hero,\",\"+.newfiPortal-cta\",\"+{\",\"+\\tborder: @xf-borderSize solid fade(@xf-paletteColor2, 20%);\",\"+\\tborder-radius: @xf-borderRadiusLarge;\",\"+\\tbackground: linear-gradient(135deg, @xf-paletteColor5, darken(@xf-paletteColor4, 10%));\",\"+\\tcolor: @xf-paletteColor1;\",\"+\\tbox-shadow: 0 18px 46px fade(@xf-paletteNeutral3, 18%);\",\"+}\",\"+\",\"+.newfiPortal-hero\",\"+{\",\"+\\tpadding: 42px;\",\"+}\",\"+\",\"+.newfiPortal-heroCopy\",\"+{\",\"+\\tmax-width: 780px;\",\"+}\",\"+\",\"+.newfiPortal-hero h1\",\"+{\",\"+\\tmargin: 6px 0 12px;\",\"+\\tfont-size: 34px;\",\"+\\tline-height: 1.15;\",\"+\\tcolor: @xf-paletteColor1;\",\"+}\",\"+\",\"+.newfiPortal-hero p,\",\"+.newfiPortal-cta p\",\"+{\",\"+\\tmargin: 0;\",\"+\\tcolor: @xf-paletteColor2;\",\"+\\tfont-size: @xf-fontSizeLarge;\",\"+}\",\"+\",\"+.newfiPortal-kicker,\",\"+.newfiPortal-eyebrow\",\"+{\",\"+\\tfont-size: @xf-fontSizeSmaller;\",\"+\\tfont-weight: @xf-fontWeightHeavy;\",\"+\\tletter-spacing: .08em;\",\"+\\ttext-transform: uppercase;\",\"+}\",\"+\",\"+.newfiPortal-kicker\",\"+{\",\"+\\tcolor: @xf-paletteAccent2;\",\"+}\",\"+\",\"+.newfiPortal-eyebrow\",\"+{\",\"+\\tcolor: @xf-textColorFeature;\",\"+}\",\"+\",\"+.newfiPortal-actions\",\"+{\",\"+\\tdisplay: flex;\",\"+\\tflex-wrap: wrap;\",\"+\\tgap: @xf-paddingMedium;\",\"+\\tmargin-top: @xf-paddingLargest;\",\"+}\",\"+\",\"+.newfiPortal-grid\",\"+{\",\"+\\tdisplay: grid;\",\"+\\tgrid-template-columns: repeat(2, minmax(0, 1fr));\",\"+\\tgap: @xf-elementSpacer;\",\"+}\",\"+\",\"+.newfiPortal-card\",\"+{\",\"+\\tmin-width: 0;\",\"+\\tpadding: @xf-paddingLargest;\",\"+\\tborder: @xf-borderSize solid @xf-borderColor;\",\"+\\tborder-radius: @xf-borderRadiusLarge;\",\"+\\tbackground: @xf-contentBg;\",\"+\\tbox-shadow: 0 8px 24px fade(@xf-paletteNeutral3, 7%);\",\"+}\",\"+\",\"+.newfiPortal-card--wide\",\"+{\",\"+\\tgrid-column: 1 / -1;\",\"+}\",\"+\",\"+.newfiPortal-cardHeader\",\"+{\",\"+\\tdisplay: flex;\",\"+\\talign-items: flex-start;\",\"+\\tjustify-content: space-between;\",\"+\\tgap: @xf-paddingLarge;\",\"+\\tmargin-bottom: @xf-paddingLarge;\",\"+}\",\"+\",\"+.newfiPortal-cardHeader h2,\",\"+.newfiPortal-cta h2\",\"+{\",\"+\\tmargin: 3px 0 0;\",\"+\\tcolor: @xf-textColorEmphasized;\",\"+}\",\"+\",\"+.newfiPortal-list,\",\"+.newfiPortal-mediaList\",\"+{\",\"+\\tdisplay: grid;\",\"+\\tgap: @xf-paddingMedium;\",\"+}\",\"+\",\"+.newfiPortal-listItem,\",\"+.newfiPortal-mediaItem\",\"+{\",\"+\\tdisplay: grid;\",\"+\\tgap: 3px;\",\"+\\tpadding: @xf-paddingLarge;\",\"+\\tborder: @xf-borderSize solid @xf-borderColorLight;\",\"+\\tborder-radius: @xf-borderRadiusMedium;\",\"+\\tbackground: @xf-contentAltBg;\",\"+\\tcolor: @xf-textColor;\",\"+\\ttext-decoration: none;\",\"+}\",\"+\",\"+.newfiPortal-listItem:hover,\",\"+.newfiPortal-mediaItem:hover\",\"+{\",\"+\\tborder-color: @xf-borderColorFeature;\",\"+\\tbackground: @xf-contentHighlightBg;\",\"+\\ttext-decoration: none;\",\"+}\",\"+\",\"+.newfiPortal-listItem strong,\",\"+.newfiPortal-mediaItem strong\",\"+{\",\"+\\tcolor: @xf-linkColor;\",\"+}\",\"+\",\"+.newfiPortal-listItem span,\",\"+.newfiPortal-mediaItem span,\",\"+.newfiPortal-listItem small,\",\"+.newfiPortal-mediaItem small\",\"+{\",\"+\\tcolor: @xf-textColorMuted;\",\"+}\",\"+\",\"+.newfiPortal-listItem--static\",\"+{\",\"+\\tcursor: default;\",\"+}\",\"+\",\"+.newfiPortal-empty,\",\"+.newfiPortal-locked\",\"+{\",\"+\\tpadding: @xf-paddingLargest;\",\"+\\tborder-radius: @xf-borderRadiusMedium;\",\"+\\tbackground: @xf-contentAltBg;\",\"+\\tcolor: @xf-textColorMuted;\",\"+}\",\"+\",\"+.newfiPortal-locked\",\"+{\",\"+\\tborder-left: @xf-borderSizeFeature solid @xf-paletteAccent2;\",\"+}\",\"+\",\"+.newfiPortal-textLink\",\"+{\",\"+\\tdisplay: inline-block;\",\"+\\tmargin-top: @xf-paddingLarge;\",\"+\\tfont-weight: @xf-fontWeightHeavy;\",\"+}\",\"+\",\"+.newfiPortal-cta\",\"+{\",\"+\\tdisplay: flex;\",\"+\\talign-items: center;\",\"+\\tjustify-content: space-between;\",\"+\\tgap: @xf-elementSpacer;\",\"+\\tpadding: @xf-paddingLargest;\",\"+}\",\"+\",\"+.newfiPortal-cta .newfiPortal-eyebrow,\",\"+.newfiPortal-cta h2\",\"+{\",\"+\\tcolor: @xf-paletteColor1;\",\"+}\",\"+\",\"+@media (max-width: @xf-responsiveMedium)\",\"+{\",\"+\\t.newfiPortal-hero\",\"+\\t{\",\"+\\t\\tpadding: @xf-paddingLargest;\",\"+\\t}\",\"+\",\"+\\t.newfiPortal-hero h1\",\"+\\t{\",\"+\\t\\tfont-size: @xf-fontSizeLargest;\",\"+\\t}\",\"+\",\"+\\t.newfiPortal-grid\",\"+\\t{\",\"+\\t\\tgrid-template-columns: 1fr;\",\"+\\t}\",\"+\",\"+\\t.newfiPortal-card--wide\",\"+\\t{\",\"+\\t\\tgrid-column: auto;\",\"+\\t}\",\"+\",\"+\\t.newfiPortal-cardHeader,\",\"+\\t.newfiPortal-cta\",\"+\\t{\",\"+\\t\\tflex-direction: column;\",\"+\\t}\",\"+\",\"+\\t.newfiPortal-card\",\"+\\t{\",\"+\\t\\tpadding: @xf-paddingLarge;\",\"+\\t}\",\"+}\",\" ]]></template>\",\" </templates>\"]\nGIT_HEAD={\"err\":\"\",\"out\":\"06bab5acd124e768f70305b3d7eca2f595871890\",\"rc\":0}\nGIT_STATUS={\"err\":\"\",\"out\":\"\",\"rc\":0}\nGIT_REMOTE_HEAD=06bab5acd124e768f70305b3d7eca2f595871890\nDB_SCHEMAS=[\"xf_newfi\"]\nXF_TEMPLATE_COLUMNS={\"cols\":[\"template_id\",\"type\",\"title\",\"style_id\",\"template\",\"template_parsed\",\"addon_id\",\"version_id\",\"version_string\",\"last_edit_date\"],\"err\":\"\",\"rc\":0}\nXF_ERROR_LOG_COLUMNS={\"cols\":[\"error_id\",\"exception_date\",\"user_id\",\"ip_address\",\"exception_type\",\"message\",\"filename\",\"line\",\"trace_string\",\"request_state\"],\"err\":\"\",\"rc\":0}\nCURRENT_TEMPLATE_ROWS={\"err\":\"\",\"rc\":0,\"rows\":[\"1610\\t0\\tpublic\\tnewfi_portal\\tNewfi/Portal\\t1f484c8cf6bdeda8fda2974abf8a57f8cc7453fe2a779af7c735afa3b73aa741\\t0\"]}\nCURRENT_ADDON_ROW={\"err\":\"\",\"rc\":0,\"rows\":[\"Newfi/Portal\\t1000010\\t1.0.0 Alpha 1\\t1\\t0\\tNULL\"]}\nCURRENT_ERROR_MAX={\"err\":\"\",\"out\":\"42\",\"rc\":0}\nERROR_ROWS_GE_42={\"columns\":[\"error_id\",\"exception_type\",\"message\",\"filename\",\"line\",\"trace_string\",\"request_state\",\"ip_address\",\"user_id\"],\"err\":\"\",\"rc\":0,\"rows\":[\"42\\tLogicException\\tAttempted to set 'type' while a save was pending without forceSet\\tsrc/XF/Mvc/Entity/Entity.php\\t645\\t#0 src/XF/Mvc/Entity/Entity.php(618): XF\\\\\\\\Mvc\\\\\\\\Entity\\\\\\\\Entity->set('type', 'public')\\\\n#1 src/XF/AddOn/DataType/AbstractDataType.php(275): XF\\\\\\\\Mvc\\\\\\\\Entity\\\\\\\\Entity->__set('type', 'public')\\\\n#2 src/XF/AddOn/DataType/Template.php(94): XF\\\\\\\\AddOn\\\\\\\\DataType\\\\\\\\AbstractDataType->importMappedAttributes(Object(SimpleXMLElement), Object(XF\\\\\\\\Entity\\\\\\\\Template))\\\\n#3 src/XF/Job/AddOnData.php(111): XF\\\\\\\\AddOn\\\\\\\\DataType\\\\\\\\Template->importAddOnData('Newfi/Portal', Object(SimpleXMLElement), 0, 8)\\\\n#4 src/XF/Job/Manager.php(275): XF\\\\\\\\Job\\\\\\\\AddOnData->run(8)\\\\n#5 src/XF/Job/Manager.php(205): XF\\\\\\\\Job\\\\\\\\Manager->runJobInternal(Array, 8)\\\\n#6 src/XF/Job/Manager.php(174): XF\\\\\\\\Job\\\\\\\\Manager->runJobEntry(Array, 8)\\\\n#7 src/XF/Cli/Runner.php(228): XF\\\\\\\\Job\\\\\\\\Manager->runById(530, 8)\\\\n#8 src/XF/Cli/Runner.php(116): XF\\\\\\\\Cli\\\\\\\\Runner->postExecutionCleanUp(Object(Symfony\\\\\\\\Component\\\\\\\\Console\\\\\\\\Output\\\\\\\\ConsoleOutput))\\\\n#9 cmd.php(17): XF\\\\\\\\Cli\\\\\\\\Runner->run()\\\\n#10 {main}\\t{\\\"cli\\\":\\\"\\\\\\\\/var\\\\\\\\/www\\\\\\\\/forums\\\\\\\\/newfi\\\\\\\\/public\\\\\\\\/cmd.php xf:addon-sub-action Newfi\\\\\\\\/Portal import --k=2f35b6e13d3bab46553e340045815fb2bf00d9a4\\\"}\\t\\t0\"]}\nXF_TEMPLATE_DATATYPE_SOURCE={\"err\":\"\",\"path\":\"/var/www/forums/newfi/public/src/XF/AddOn/DataType/Template.php\",\"rc\":0,\"text\":\" 65\\t\\t\\t\\t\\t->whereOr($conditions)\\n 66\\t\\t\\t\\t\\t->where('style_id', 0)\\n 67\\t\\t\\t\\t\\t->fetch()\\n 68\\t\\t\\t\\t\\t->groupBy('type', 'title');\\n 69\\t\\t\\t}\\n 70\\t\\t\\telse\\n 71\\t\\t\\t{\\n 72\\t\\t\\t\\t$existing = [];\\n 73\\t\\t\\t}\\n 74\\t\\n 75\\t\\t\\t$i = 0;\\n 76\\t\\t\\t$last = 0;\\n 77\\t\\n 78\\t\\t\\tforeach ($entries AS $entry)\\n 79\\t\\t\\t{\\n 80\\t\\t\\t\\t$i++;\\n 81\\t\\n 82\\t\\t\\t\\tif ($i <= $start)\\n 83\\t\\t\\t\\t{\\n 84\\t\\t\\t\\t\\tcontinue;\\n 85\\t\\t\\t\\t}\\n 86\\t\\n 87\\t\\t\\t\\t$type = (string) $entry['type'];\\n 88\\t\\t\\t\\t$title = (string) $entry['title'];\\n 89\\t\\t\\t\\t$entity = $existing[$type][$title] ?? $this->create();\\n 90\\t\\t\\t\\t$entity->setOption('check_duplicate', false);\\n 91\\t\\t\\t\\t$entity->setOption('report_modification_errors', false);\\n 92\\t\\t\\t\\t$entity->getBehavior(DevOutputWritable::class)->setOption('write_dev_output', false);\\n 93\\t\\n 94\\t\\t\\t\\t$this->importMappedAttributes($entry, $entity);\\n 95\\t\\t\\t\\t$entity->style_id = 0;\\n 96\\t\\t\\t\\t$entity->template = $this->getCdataValue($entry);\\n 97\\t\\t\\t\\t$entity->addon_id = $addOnId;\\n 98\\t\\t\\t\\t$entity->save(true, false);\\n 99\\t\\n 100\\t\\t\\t\\t\\\\XF::dequeueRunOnce('styleLastModifiedDate');\\n 101\\t\\n 102\\t\\t\\t\\tif ($this->resume($maxRunTime, $startTime))\\n 103\\t\\t\\t\\t{\\n 104\\t\\t\\t\\t\\t$last = $i;\\n 105\\t\\t\\t\\t\\tbreak;\\n 106\\t\\t\\t\\t}\\n 107\\t\\t\\t}\\n 108\\t\\t\\treturn ($last ?: false);\\n 109\\t\\t}\\n 110\\t\\n 111\\t\\tpublic function deleteOrphanedAddOnData($addOnId, \\\\SimpleXMLElement $container)\\n 112\\t\\t{\\n 113\\t\\t\\t$existing = $this->findAllForType($addOnId)->where('style_id', 0)->fetch()->groupBy('type', 'title');\\n 114\\t\\t\\tif (!$existing)\\n 115\\t\\t\\t{\\n\"}\nXF_ABSTRACT_DATATYPE_SOURCE={\"err\":\"\",\"path\":\"/var/www/forums/newfi/public/src/XF/AddOn/DataType/AbstractDataType.php\",\"rc\":0,\"text\":\" 245\\t\\t{\\n 246\\t\\t\\tif ($entity->exists() && $allowMaintained)\\n 247\\t\\t\\t{\\n 248\\t\\t\\t\\t$maintained = $this->getMaintainedAttributes();\\n 249\\t\\t\\t}\\n 250\\t\\t\\telse\\n 251\\t\\t\\t{\\n 252\\t\\t\\t\\t$maintained = [];\\n 253\\t\\t\\t}\\n 254\\t\\n 255\\t\\t\\tforeach ($this->getMappedAttributes() AS $attr)\\n 256\\t\\t\\t{\\n 257\\t\\t\\t\\tif (in_array($attr, $maintained))\\n 258\\t\\t\\t\\t{\\n 259\\t\\t\\t\\t\\tcontinue;\\n 260\\t\\t\\t\\t}\\n 261\\t\\n 262\\t\\t\\t\\tif (self::USE_AUTO_CDATA)\\n 263\\t\\t\\t\\t{\\n 264\\t\\t\\t\\t\\tif (isset($el[$attr]))\\n 265\\t\\t\\t\\t\\t{\\n 266\\t\\t\\t\\t\\t\\t$entity->$attr = (string) $el[$attr];\\n 267\\t\\t\\t\\t\\t}\\n 268\\t\\t\\t\\t\\telse if (isset($el->{$attr}))\\n 269\\t\\t\\t\\t\\t{\\n 270\\t\\t\\t\\t\\t\\t$entity->$attr = (string) $el->{$attr};\\n 271\\t\\t\\t\\t\\t}\\n 272\\t\\t\\t\\t}\\n 273\\t\\t\\t\\telse\\n 274\\t\\t\\t\\t{\\n 275\\t\\t\\t\\t\\t$entity->$attr = (string) $el[$attr];\\n 276\\t\\t\\t\\t}\\n 277\\t\\t\\t}\\n 278\\t\\t}\\n 279\\t\\n 280\\t\\tprotected function pluckXmlAttribute(\\\\SimpleXMLElement $els, $key)\\n 281\\t\\t{\\n 282\\t\\t\\t$values = [];\\n 283\\t\\t\\t$i = 0;\\n 284\\t\\t\\tforeach ($els AS $el)\\n 285\\t\\t\\t{\\n 286\\t\\t\\t\\t$values[$i++] = (string) $el[$key];\\n 287\\t\\t\\t}\\n 288\\t\\n 289\\t\\t\\treturn $values;\\n 290\\t\\t}\\n\"}\nXF_ENTITY_SET_SOURCE={\"err\":\"\",\"path\":\"/var/www/forums/newfi/public/src/XF/Mvc/Entity/Entity.php\",\"rc\":0,\"text\":\" 625\\t\\n 626\\t\\tpublic function set($key, $value, array $options = [])\\n 627\\t\\t{\\n 628\\t\\t\\tif ($this->_readOnly)\\n 629\\t\\t\\t{\\n 630\\t\\t\\t\\tthrow new \\\\LogicException(\\\"Entity is read only\\\");\\n 631\\t\\t\\t}\\n 632\\t\\n 633\\t\\t\\tif ($this->_deleted)\\n 634\\t\\t\\t{\\n 635\\t\\t\\t\\tthrow new \\\\LogicException(\\\"Attempted to set '$key' on a deleted entity\\\");\\n 636\\t\\t\\t}\\n 637\\t\\n 638\\t\\t\\tif ($this->_writePending == 'delete')\\n 639\\t\\t\\t{\\n 640\\t\\t\\t\\tthrow new \\\\LogicException(\\\"Attempted to set '$key' while a deletion was pending\\\");\\n 641\\t\\t\\t}\\n 642\\t\\n 643\\t\\t\\tif ($this->_writePending && empty($options['forceSet']))\\n 644\\t\\t\\t{\\n 645\\t\\t\\t\\tthrow new \\\\LogicException(\\\"Attempted to set '$key' while a save was pending without forceSet\\\");\\n 646\\t\\t\\t}\\n 647\\t\\n 648\\t\\t\\tif (!isset($this->_structure->columns[$key]))\\n 649\\t\\t\\t{\\n 650\\t\\t\\t\\tif (empty($options['skipInvalid']))\\n 651\\t\\t\\t\\t{\\n 652\\t\\t\\t\\t\\tthrow new \\\\InvalidArgumentException(\\\"Column '$key' is unknown\\\");\\n 653\\t\\t\\t\\t}\\n 654\\t\\t\\t\\treturn false;\\n 655\\t\\t\\t}\\n\"}\nADDON_REBUILD_HELP={\"err\":\"\",\"out\":\"Description:\\n Rebuilds the specified add-on data.\\n\\nUsage:\\n xf:addon-rebuild [options] [--] <id>\\n xf-addon:rebuild\\n\\nArguments:\\n id Add-On ID\\n\\nOptions:\\n -f, --force Skip verifying that the add-on is rebuildable\\n -h, --help Display help for the given command. When no command is given display help for the list command\\n -q, --quiet Do not output any message\\n -V, --version Display this application version\\n --ansi|--no-ansi Force (or disable --no-ansi) ANSI output\\n -n, --no-interaction Do not ask any interactive question\\n -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug\\n\",\"rc\":0}\nCMD_GLOBAL_HELP={\"err\":\"\",\"out\":\"Description:\\n List commands\\n\\nUsage:\\n list [options] [--] [<namespace>]\\n\\nArguments:\\n namespace The namespace name\\n\\nOptions:\\n --raw To output raw command list\\n --format=FORMAT The output format (txt, xml, json, or md) [default: \\\"txt\\\"]\\n --short To skip describing commands' arguments\\n -h, --help Display help for the given command. When no command is given display help for the list command\\n -q, --quiet Do not output any message\\n -V, --version Display this application version\\n --ansi|--no-ansi Force (or disable --no-ansi) ANSI output\\n -n, --no-interaction Do not ask any interactive question\\n -v|vv|vvv, --verbose Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug\\n\\nHelp:\\n The list command lists all commands:\\n \\n /var/www/forums/newfi/public/cmd.php list\\n \\n You can also display the commands for a specific namespace:\\n \\n /var/www/forums/newfi/public/cmd.php list test\\n \\n You can also output the information in other formats by using the --format option:\\n \\n /var/www/forums/newfi/public/cmd.php list --format=xml\\n \\n It's also possible to get raw list of commands (useful for embedding command runner):\\n \\n /var/www/forums/newfi/public/cmd.php list --raw\\n\",\"rc\":0}\nFINAL_DECISION=RCA2_COMPLETE_NO_MUTATION_TEMPLATE_IMPORT_CONFLICT_EVIDENCE_READY\nRCA2_END=true\n"
|
||
}
|