Originally created by: TheoV823
scripts/deploy_site.py has had a SyntaxError at line 339 since commit c403028 (feat: submit IndexNow URLs on deploy). A print('...') call was written with the opening ' and closing ') on different physical lines:
print('
-- IndexNow submission --')
Python rejects this as SyntaxError: unterminated string literal. The deploy script never runs, so the deploy workflow has been failing on every push since c403028 — including the deploys for [#148], [#149], and [#151] from this morning. None of the recently merged site changes have actually shipped to mnemehq.com.
Collapse to a single line with an escaped newline:
print('\n-- IndexNow submission --')
python -m py_compile scripts/deploy_site.py exits 0 (verified locally)🤖 Generated with Claude Code
Originally posted by: github-actions[bot]
mneme self-governance check
Mode:
warn- verdicts are visible but do not block merge. Rollout plan:.mneme/README.md.Summary: 0 pass, 0 warn, 1 fail, 0 unknown
scripts/deploy_site.pyDetails
FAIL [deploy_001] anti_pattern "python scripts/deploy_site.py" -- trigger: python deploy_site.py must always be run from the main repo root (C:/dev/mneme), never from a worktree directory FAIL [site_perf_001] anti_pattern "inline <script> running animation or DOM-mutation logic at parse time" -- trigger: script Site pages with inline JavaScript must defer animations and pre-size dynamic containers to prevent CLS and TBT regressions on mobile. FAIL [site_perf_001] anti_pattern "container divs with no height before JS populates them" -- trigger: before Site pages with inline JavaScript must defer animations and pre-size dynamic containers to prevent CLS and TBT regressions on mobile. FAIL [site_perf_001] anti_pattern "synchronous Google Fonts CSS link in <head>" -- trigger: css Site pages with inline JavaScript must defer animations and pre-size dynamic containers to prevent CLS and TBT regressions on mobile. FAIL [site_perf_001] anti_pattern "backdrop-filter on nav/menus applied unconditionally on mobile (GPU cost)" -- trigger: filter Site pages with inline JavaScript must defer animations and pre-size dynamic containers to prevent CLS and TBT regressions on mobile. FAIL [site_perf_001] anti_pattern "scripts before <link rel=preconnect> hints" -- trigger: scripts Site pages with inline JavaScript must defer animations and pre-size dynamic containers to prevent CLS and TBT regressions on mobile. WARN [site_perf_001] constraint "No blocking scripts in <head> before preconnect hints" -- trigger: scripts Site pages with inline JavaScript must defer animations and pre-size dynamic containers to prevent CLS and TBT regressions on mobile. FAIL [encoding_001] anti_pattern "Set-Content without -Encoding" -- trigger: content All automation that reads or writes text files must specify the encoding explicitly. UTF-8 for all site, doc, config, and source files in this repo. FAIL [encoding_001] anti_pattern "open() without encoding= in Python" -- trigger: open All automation that reads or writes text files must specify the encoding explicitly. UTF-8 for all site, doc, config, and source files in this repo. FAIL [encoding_001] anti_pattern "writeFileSync without encoding in Node.js" -- trigger: encoding All automation that reads or writes text files must specify the encoding explicitly. UTF-8 for all site, doc, config, and source files in this repo. FAIL [encoding_001] anti_pattern "implicit encoding in any automation file write" -- trigger: encoding All automation that reads or writes text files must specify the encoding explicitly. UTF-8 for all site, doc, config, and source files in this repo. WARN ADR_CHANGED [ADR-001] ADR-001 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-001-positioning-and-messaging.md WARN ADR_CHANGED [ADR-002] ADR-002 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-002-repo-boundary-internal-tooling.md WARN ADR_CHANGED [ADR-003] ADR-003 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-003-site-publishing-guidelines.md WARN ADR_CHANGED [ADR-004] ADR-004 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-004-brand-name-mneme-hq.md WARN ADR_CHANGED [ADR-005] ADR-005 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-005-brand-vs-package-namespace-enforcement.md WARN ADR_CHANGED [ADR-006] ADR-006 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-006-insights-article-seo-requirements.md WARN ADR_CHANGED [ADR-007] ADR-007 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-007-og-image-generation.md WARN ADR_CHANGED [ADR-008] ADR-008 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-008-persona-buyer-page-content-standards.md WARN ADR_CHANGED [ADR-009] ADR-009 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-009-explicit-text-encoding-in-automation.md WARN ADR_CHANGED [ADR-010] ADR-010 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-010-automation-artifact-governance.md WARN ADR_CHANGED [ADR-011] ADR-011 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-011-knowledge-graph-content-architecture.md WARN ADR_CHANGED [ADR-012] ADR-012 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-012-conceptual-authority-discipline.md WARN ADR_CHANGED [ADR-013] ADR-013 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-013-external-platform-presence-standards.md WARN ADR_CHANGED [ADR-014] ADR-014 source file changed since import (hash mismatch). Re-run `mneme adr import` to refresh the imported decision. source: ../docs/adr/ADR-014-harness-complementary-positioning-vocabulary.md Result: FAIL </details> <sub>Generated by `.github/workflows/mneme-check.yml` · query = PR title + file path · scope = repo-governance paths.</sub> <!-- Sticky Pull Request Commentmneme-check --> </script>scripts/deploy_site.py— FAILTicket changed by: TheoV823