[CL-INFRA] CF Pages landmine: нельзя orange-cloud europa-tech.org (530) — снять custom-domain binding europa-tech-web-ezt #446
Closed
opened 2026-06-07 19:54:59 +00:00 by andrei
·
4 comments
No Branch/Tag specified
master
agent/devops/pix-15311
agent/devops/pix-15306
agent/cto/pix-15177
main
agent-fullstack/pix-8664
feature/claude-cl1176-payout-e2e
feature/claude-cl1176-guard-dbname-fix
feature/claude-cl1176-e2e-in-ci
feature/claude-cl1176-conditional-prisma-mock
feature/claude-cl1176-exchange-buyback-e2e
agent/devops/pix-14678
feature/claude-cl1176-webhook-distribution-e2e
feature/claude-cl1176-type-honesty
feature/claude-cl1176-cancel-expire-e2e
fix/sentry-lenis-empty-touch
agent/fullstack/pix-13735-news-title-scope
agent/fullstack/pix-13735-newsai-fixtures
agent/fullstack/pix-13735-news-safelist
fix/low-audit-20260719
chore/monthly-deps-20260719
agent/compliance/pix-13735
agent/fullstack/pix-14259
fix/blog-properties-links-20260718
fix/news-sitemap-public-parity-20260718
fix/nowpayments-probe-alert-hygiene-20260718
agent/sentry/pix-14176
agent/cto/pix-14168
agent/fullstack/pix-14161
agent/cto/pix-14162
codex/react-doctor-suppression-20260717
agent/fullstack/pix-14153
agent/cto/pix-14151
agent/fullstack/pix-14150
agent/fullstack/pix-14132
agent/fullstack/pix-14144
deploy/pix-14136
agent/fullstack/pix-14136
codex/docs-audit-status-20260717
codex/fix-ma0710-m2-lending-confirmations-20260717
codex/fix-ma0710-m1-lazy-hydrate-accessibility-20260717
codex/fix-ma0710-h5-timelock-bootstrap-contract-20260717
codex/fix-ma0710-h4-eurt-timeout-reconciliation-20260717
codex/fix-ma0710-h3-purchase-accounting-20260717
codex/fix-ma0710-h2-stripe-post-actions-20260716
agent/fullstack/pix-14122
agent/fullstack/pix-14118
agent/cto/pix-14065
codex/fix-hero-fallback-copy-20260716
agent/fullstack/pix-14030
codex/fix-react-doctor-lazyhydrate-20260716
agent/fullstack/pix-13809
codex/stripe-payment-create-atomic-20260714
agent/devops/pix-13984
agent/cto/pix-13978
agent/compliance/pix-13968
agent/fullstack/pix-13935
agent/fullstack/pix-13886
agent/fullstack/pix-13744
fix/pix-13874-zod-record-schema
agent/fullstack/pix-13760-v2
fix/pix-13839-compliance-locale
agent/fullstack/pix-13846
agent/fullstack/pix-13760
fix/pix-13844-cabinet-meta
agent/devops/pix-13833-pr1074
fix/PIX-13775-rooms-share-price
fix/pix-13738-compliance-copy
agent/cto/pix-13726
codex/institutional-bulk-lock-order-20260711
codex/payment-lock-legacy-audit-20260711
codex/payment-lock-order-20260711
codex/idempotency-legacy-compat-20260710
codex/idempotency-fingerprint-conflict-20260710
codex/stripe-fallback-idempotency-20260710
codex/payout-serialization-retry-20260710
codex/tg-balance-idempotency-20260710
codex/lending-repay-race-20260710
feature/claude-vault-withdraw-failclosed-20260710
feature/claude-mega-audit-20260710-5
feature/claude-mega-audit-20260710-4
feature/claude-mega-audit-20260710-3
feature/claude-mega-audit-20260710-2
fix/qa-password-reset-email
feature/claude-api-eaddrinuse-retry
archive/master-deploy-pix8054
archive/pr-913
archive/pix-7201-apr-hero-fix-v2
archive/fix--rate-limit-ipv6-networkform-20260614
archive/pix-7201-apr-hero-fix-clean
archive/local-pix-8195
archive/fix--pix-9866-it-faq-launch-date
archive/fix--public-activity-pii-fallback-test
archive/fix--pix-ci-pr-janitor-checkout
archive/fix--pix-9573-faq-withdrawal-minimum
archive/fix--pix-9384-consolidated-overclaim-sweep
archive/fix--pix-9125-mui-color-resolve
archive/fix--pix-9092-swap-mui-color-resolve
archive/fix--pix-8998-i18n-votes-securities
archive/fix--pix-9050-v2
archive/fix--pix-8297-income-overclaim
archive/fix--pix-8381-bridge-lz-disabled
archive/fix--pix-8943-launch-date-i18n-202606161833
archive/fix--pix-8239-compliance-rebase
archive/fix--pix-8284-blog-remaining-overclaims
archive/fix--pix-8284-blog-remaining-overclaims-v2
archive/fix--pix-8190-legal-structure-overclaim
archive/fix--pix-8164-rebase
archive/fix--pix-8239-compliance-followup
archive/fix--pix-7916-remaining-overclaims
archive/fix--pix-8105-v3
archive/fix--pix-7901-cashflow-v2
archive/fix--pix-7901-cashflow-messaging
archive/fix--pix-7860-compliance-messaging
archive/fix--pix-7839-apply-seed-workflow
archive/fix--pix-7766-compliance-fr-es
archive/fix--pix-7766-fr-es-compliance-overclaim
archive/fix--pix-7808-ru-launch-date
archive/fix--pix-7734-seo-price-live
archive/fix--pix-7713-spv-erc1155
archive/fix--pix-7749-blog-normalize
archive/fix--pix-6193-contract-info
archive/fix--pix-7294-guaranteed-secondary-marketplace
archive/fix--pix-7613-blog-disclaimers
archive/fix--pix-13865-prerender-fix
archive/fix--pix-6172-public-news-guard
archive/fix--pix-13865-prerender-warnings
archive/fix--pix-13720-ci-skill-md-and-plan-phrases
archive/fix--pix-13713-regression-test-rooms-pagination
archive/fix--pix-12450-rooms-pagination
archive/fix--pix-10565-guaranteed-tokenization-guide
archive/fix--pix-11214-appError-eslint
archive/fix--pix-10617-protobufjs-security
archive/fix--news-ai-provider-chain
archive/fix--pix-10285-comma-splice
archive/fix--pix-10067-id-consob-faq
archive/fix--claude-cl-redis-adapter-mock-on
archive/fix--deploy-prev-sha-nonsticky
archive/fix--deploy-release-gate-timeout
archive/fix--PIX-4255-db-restore-readiness
archive/feature--twitter-oauth-prod
archive/fix--PIX-10911-mica-bio-overclaim
archive/feature--tg-notify-deploy-integration
archive/feature--claude-remediation-b3
archive/feature--pix-6445-compliance-sanitizer
archive/feature--claude-pix-9050-rebase
archive/feature--claude-pix-9116-rebase
archive/feature--claude-pr-janitor
archive/feature--claude-pix-9041-rebase
archive/feature--claude-pix-8943-rebase
archive/feature--claude-pix-8991-rebase
archive/feature--claude-pix-8556-api-compliance
archive/feature--claude-pix-8674-rebase
archive/feature--claude-pix-8644-rebase
archive/feature--claude-pix-7878-rebase
archive/feature--claude-pix-8259-rebase
archive/feature--claude-pix-8105-rebase
archive/feature--claude-pix-10315-rebase
archive/feature--claude-pix-10084-rebase
archive/feature--claude-pix-6734-apr-disclaimer
archive/feature--claude-google-admin-login
archive/feature--claude-mega-audit-w-20260629
archive/feature--claude-marketing-copy-fix
archive/feature--claude-cl-softdelete-consistency
archive/feature--claude-dep-update-2026-06-14
archive/feature--claude-cl-rm-stale-telegram-mock
archive/feature--claude-cl-kyc-idem-stale-recovery
archive/feature--claude-cl-rm-fomo-countdown
archive/feature--claude-cl-regsummary-softdelete
archive/feature--claude-cl-fix-deploy-push-413
archive/feature--claude-cl-fix-forecasttab-mock-path
archive/feature--claude-cl-kraken-fetch-timeout
archive/feature--claude-cl-escrow-deposit-window
archive/feature--claude-audit-wave4-admin-2fa
archive/feature--admin-modernize-116
archive/feat--pix-10603-vault-cleanup
archive/feat--cto-eslint-fixes
archive/feat--pix-6076-public-compliance-copy
archive/feat--PIX-8170-soften-blog-income-claims
archive/feat--PIX-7409-health-limiter-v2
archive/feat--PIX-7860-public-copy-safety
archive/feat--PIX-7409-health-limiter
archive/cto--pix-6373-prod
archive/devops--pix-12433-telegram-config
archive/codex--static-release-retention-20260702
archive/codex--session-blacklist-audit-doc-sync-20260701
archive/compliance-pix-6561-final
archive/codex--remove-article-preview-cdn-20260701
archive/codex--obj-id-static-redirect-20260604
archive/codex--i18n-aria-namespace-audit-20260702
archive/codex--google-oauth-admin-guard-20260701
archive/codex--dao-timelock-admin-handoff-20260701
archive/codex--europatech-csp-zero-hash
archive/backup--agent-devops-pix-12477
archive/backup--agent-devops-pix-13505-brotli
archive/codex--b3-yield-distribution-reconcile-20260701
archive/agent-ir-investor-relations--pix-9995
archive/agent-sentry--pix-8509
archive/agent-ir-investor-relations--pix-9966
archive/agent-ir-investor-relations--pix-9863
archive/agent-ir-investor-relations--pix-9048
archive/agent-ir-investor-relations--pix-9658
archive/agent-ir-investor-relations--pix-7057
archive/agent-ir-investor-relations--pix-7058
archive/agent-ir-investor-relations--pix-8976
archive/agent-ir-investor-relations--pix-7019
archive/agent-ir-investor-relations--pix-6521
archive/agent-ir-investor-relations--pix-6494
archive/agent-ir-investor-relations--pix-6353
archive/agent-ir-investor-relations--pix-6478
archive/agent-ir-investor-relations--pix-6335
archive/agent-fullstack--pix-8953
archive/agent-fullstack--pix-9412
archive/agent-ir-investor-relations--pix-10201
archive/agent-fullstack--pix-8839
archive/agent-fullstack--pix-8828
archive/agent-fullstack--pix-8786
archive/agent-fullstack--pix-8599
archive/agent-fullstack--pix-8297
archive/agent-fullstack--pix-8501
archive/agent-fullstack--pix-8284
archive/agent-fullstack--pix-8239
archive/agent-fullstack--pix-8259
archive/agent-fullstack--pix-8190
archive/agent-fullstack--pix-8170
archive/agent-fullstack--pix-8195
archive/agent-fullstack--pix-8105
archive/agent-fullstack--pix-8072
archive/agent-fullstack--pix-8164
archive/agent-fullstack--pix-7916
archive/agent-fullstack--pix-7915
archive/agent-fullstack--pix-7939
archive/agent-fullstack--pix-7901
archive/agent-fullstack--pix-7884
archive/agent-fullstack--pix-7878
archive/agent-fullstack--pix-7857
archive/agent-fullstack--pix-7860
archive/agent-fullstack--pix-7844
archive/agent-fullstack--pix-7808
archive/agent-fullstack--pix-7838
archive/agent-fullstack--pix-7839
archive/agent-fullstack--pix-7790
archive/agent-fullstack--pix-7791
archive/agent-fullstack--pix-7772
archive/agent-fullstack--pix-7713
archive/agent-fullstack--pix-7734
archive/agent-fullstack--pix-7771
archive/agent-fullstack--pix-7650
archive/agent-fullstack--pix-7687
archive/agent-fullstack--pix-7623
archive/agent-fullstack--pix-7597
archive/agent-fullstack--pix-7578
archive/agent-fullstack--pix-7552
archive/agent-fullstack--pix-7540
archive/agent-fullstack--pix-7539
archive/agent-fullstack--pix-7527
archive/agent-fullstack--pix-7510
archive/agent-fullstack--pix-7436
archive/agent-fullstack--pix-7507
archive/agent-fullstack--pix-7416
archive/agent-fullstack--pix-7425
archive/agent-fullstack--pix-7409
archive/agent-fullstack--pix-7399-delivery
archive/agent-fullstack--pix-7400-compliance-copy
archive/agent-fullstack--pix-7400-compliance-copy-v2
archive/agent-fullstack--pix-7389
archive/agent-fullstack--pix-7375
archive/agent-fullstack--pix-7376
archive/agent-fullstack--pix-7337
archive/agent-fullstack--pix-7344
archive/agent-fullstack--pix-7360
archive/agent-fullstack--pix-7304
archive/agent-fullstack--pix-7318
archive/agent-fullstack--pix-7317
archive/agent-fullstack--pix-7010
archive/agent-fullstack--pix-7172
archive/agent-fullstack--pix-7001
archive/agent-fullstack--pix-6961
archive/agent-fullstack--pix-6980
archive/agent-fullstack--pix-6867
archive/agent-fullstack--pix-6743
archive/agent-fullstack--pix-6744
archive/agent-fullstack--pix-6866
archive/agent-fullstack--pix-6659
archive/agent-fullstack--pix-6710
archive/agent-fullstack--pix-6690
archive/agent-fullstack--pix-6618
archive/agent-fullstack--pix-6607
archive/agent-fullstack--pix-6639
archive/agent-devops--pix-8163
archive/agent-devops--pix-8189
archive/agent-devops--pix-8054
archive/agent-devops--pix-6394
archive/agent-devops--pix-13687
archive/agent-devops--pix-7974
archive/agent-cto--pix-9487
archive/agent-cto--pix-9610
archive/agent-devops--pix-11297
archive/agent-cto--pix-9486
archive/agent-cto--pix-9457
archive/agent-cto--pix-9483
archive/agent-cto--pix-9148
archive/agent-cto--pix-9116
archive/agent-cto--pix-9089
archive/agent-cto--pix-8944
archive/agent-cto--pix-9050
archive/agent-cto--pix-8943
archive/agent-cto--pix-8878
archive/agent-cto--pix-8881
archive/agent-cto--pix-8882
archive/agent-cto--pix-8755
archive/agent-cto--pix-8724
archive/agent-cto--pix-8744
archive/agent-cto--pix-8655
archive/agent-cto--pix-8695
archive/agent-cto--pix-8674
archive/agent-cto--pix-8644
archive/agent-cto--pix-8592
archive/agent-cto--pix-8518
archive/agent-cto--pix-8494
archive/agent-cto--pix-8469
archive/agent-cto--pix-8480
archive/agent-cto--pix-7532
archive/agent-cto--pix-8371
archive/agent-cto--pix-7655
archive/agent-cto--pix-7495
archive/agent-cto--pix-7201
archive/agent-cto--pix-7494
archive/agent-cto--pix-7195
archive/agent-cto--pix-7178
archive/agent-cto--pix-7196
archive/agent-cto--pix-7133
archive/agent-cto--pix-7143
archive/agent-cto--pix-7138
archive/agent-cto--pix-7097
archive/agent-cto--pix-7040
archive/agent-cto--pix-7109
archive/agent-cto--pix-7032
archive/agent-cto--pix-7039
archive/agent-cto--pix-7038
archive/agent-cto--pix-6977
archive/agent-cto--pix-7022
archive/agent-cto--pix-7014
archive/agent-cto--pix-6967
archive/agent-cto--pix-6962
archive/agent-cto--pix-6960
archive/agent-cto--pix-6949
archive/agent-cto--pix-6953
archive/agent-cto--pix-6918
archive/agent-cto--pix-6850
archive/agent-cto--pix-6891
archive/agent-cto--pix-6867
archive/agent-cto--pix-6685
archive/agent-cto--pix-6734
archive/agent-cto--pix-6703
archive/agent-cto--pix-6678
archive/agent-cto--pix-6675
archive/agent-cto--pix-6664
archive/agent-cto--pix-6648
archive/agent-cto--pix-6658
archive/agent-cto--pix-6650
archive/agent-cto--pix-6632
archive/agent-cto--pix-6634
archive/agent-cto--pix-6642
archive/agent-cto--pix-6602
archive/agent-cto--pix-6623
archive/agent-cto--pix-6613
archive/agent-cto--pix-6601
archive/agent-cto--pix-6570
archive/agent-cto--pix-6554
archive/agent-cto--pix-6553
archive/agent-cto--pix-6540
archive/agent-cto--pix-6542
archive/agent-cto--pix-13359-api-build-fix-rebased
archive/agent-cto--pix-13359-api-build-fix
archive/agent-cto--pix-6396-doc-update
archive/agent-cto--pix-12568
archive/agent-cto--pix-12858
archive/agent-cto--pix-13073-redis-ci-fix
archive/agent-cto--pix-11506
archive/agent-cto--pix-11505
archive/agent-cto--pix-11576-review-complete
archive/agent-content-writer--pix-7457
archive/agent-cto--pix-11101
archive/agent-compliance--pix-9887
archive/agent-compliance--pix-7344-v2
archive/agent-compliance--pix-7173
archive/agent-compliance--pix-9696
archive/agent-compliance--pix-6577
archive/agent-compliance--pix-10382-rebased
archive/agent-compliance--pix-10382
archive/agent-compliance--pix-10315
archive/agent-compliance--pix-10084
archive/agent-cmo--pix-6407
archive/agent
archive/agent-4922b3c6-a783-4afd-941b-e22186f4f40f--pix-7016
archive/agent-27a1dc8e-9e87-48b3-8ab7-0603a2d5374a--pix-9387
sale-ready-20260629
v9.0
v4.0
v3.0
No labels
ci-failing
duplicate
needs-rebase
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set.
Reference
europa-tech-srl/europatech#446
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Что
Нельзя включить Cloudflare proxy (orange-cloud) на
europa-tech.org/www— мгновенно даёт HTTP 530 Origin DNS error. Сейчас принудительноdns-only(grey-cloud), origin = Hetzner nginx, работает.Корень
Заброшенный Cloudflare Pages проект
europa-tech-web-eztдержитeuropa-tech.orgкак custom-domain на CF edge. Пока grey-cloud — A-запись обходит CF, безвредно. При orange-cloud CF edge выбирает Pages-домен (битый origin) вместо проксирования на Hetzner → 530. Проект в другом CF-аккаунте (не вadmin@europa-tech.org's account16bbb0a3..., где живёт зона) —pages/projectsпуст,Project not found. В зоне нет_cf-pagesverification-записи, разорвать binding со своей стороны нельзя.Зачем
Без снятия binding нельзя получить CF edge-cache/DDoS-щит для фронта. Текущий grey-cloud + nginx — безопасный steady state, но без CDN-преимуществ CF.
План
europa-tech-web-ezt(искать в старых CF-логинах; вероятно old/test аккаунт).europa-tech-web-ezt→ Custom domains → удалитьeuropa-tech.org+www.europa-tech.org(или удалить проект, фронт давно на Hetzner nginx).europa-tech.org+www(A+AAAA), SSL mode ужеstrict→ безопасно.http_request_cache_settings, respect-origin) для apex+www. Деплой уже делает purge-cloudflare.curl -I https://europa-tech.org→ cf-ray present + 200 + контент цел; проверить SPA-роуты и api/wss (api/files/call/meet/tg/widget/yente оставить dns-only).Где могу ошибаться
europa-tech-web-ezt.pages.devне используется нигде перед удалением._railway-verifyTXT (Railway запрещён) — попутно вычистить.Инцидент
2026-06-07: попытка orange-cloud сломала prod на ~1 мин (530), откатано (proxied=false на 4 записях), сайт восстановлен. Детали в LightRAG
insert_20260607_195229.Ре-верификация 2026-07-09: состояние без изменений.
wrangler pages project listв нашем аккаунте (admin@europa-tech.org): проектов ноль — europa-tech-web-ezt по-прежнему в чужом CF-аккаунте.curl -I https://europa-tech.org: 200, Server: nginx, cf-ray отсутствует — grey-cloud steady state работает.Блокер прежний и внешний: нужен доступ к старому CF-аккаунту, владеющему Pages-проектом (шаг 1 плана — ручной поиск старых логинов CEO). Технически автономно не решается. Safe steady state сохраняется, деградации нет.
Прогресс 2026-07-09 (вечер): claim ОТВОЁВАН, ждём edge-очистку.
Сделано:
7d6dda6ca14888d4af2b68085b225489(cf-pages-deploy.md) — креды недоступны ни в одном хранилище.europa-tech-reclaimв нашем аккаунте + деплой текущей статики (5174 файла) + CNAME apex→Pages на 2.5 мин → CF верифицировал владение зоной и перевёл claim на нас (status=activet+130s). DNS восстановлен побитово, проект удалён, временные файлы вычищены.Остаток: edge-роутинг держит осиротевшую запись — apex через proxy = 530 err 1016 (>1ч после detach). Публичный трафик не затронут (grey-cloud). Монитор ждёт очистки.
План Б если не дочистится: постоянная привязка apex к нашему пустому проекту (нейтрализует 530: orange отдаст наш контент с Pages вместо ошибки) + Support ticket на полное удаление осиротевшей записи — доказательства владения на руках (verification active, ray IDs).
Проверка 2026-07-19: мина обезврежена внешне — binding свободен.
Что проверено (probe-методика, без касания прод-трафика):
europa-tech-web-ezt.pages.dev— NXDOMAIN; в нашем аккаунте (16bbb0a3...) Pages-проектов 0.etz-binding-probeв нашем аккаунте;europa-tech.orgиwww.europa-tech.orgпривязались как custom domains без 409 — значит чужой binding из проектаeuropa-tech-web-eztуже снят (проект удалён владельцем или CF вычистил).Остаток (шаги 3-5 плана: orange-cloud www+apex, cache rule respect-origin, verify):
CLOUDFLARE_API_TOKEN:dns_recordsдаёт10000 Authentication error(токен без Zone.DNS:Edit; только Pages/R2/Workers).europa-tech.org, (b) вручную в dashboard: DNS -> proxied на A/AAAA apex+www (SSL уже strict)._railway-verifyTXT — тоже ждёт DNS-прав.После получения прав: flip www -> curl -I (cf-ray+200) -> flip apex -> cache rule -> smoke SPA/api. api/files/call/meet/tg/widget/yente остаются dns-only.
Мина снята (2026-07-22, выполнено)
Официального self-service пути для чужого stale-binding нет (проверено по CF docs). Сработал zone-owner takeover:
europa-tech-reclaim.POST /pages/projects/…/domainsдляeuropa-tech.orgиwww.europa-tech.org— оба success:true. CF не допускает один hostname у двух проектов ⇒ центральный binding ПЕРЕПИСАН с заброшенногоeuropa-tech-web-eztна наш проект (старый add вернул бы «already associated»).DNS не трогался: grey-cloud, A → Hetzner, прод весь процесс работал (edge-binding вне трафика при DNS-only).
Финальная проверка (1 клик, по желанию): включить orange-cloud на
www— ожидается прокси на Hetzner (200), не 530. При 530 — reopen; следующий шаг: тикет в CF Support от владельца зоны («stale Pages custom-domain binding from foreign accounteuropa-tech-web-ezt, please detach»).Закрываю: предмет issue (binding чужого проекта на hostname) устранён доказуемо.