Files
iqon/reports/deployment-readiness-2026-05-20.md
T
2026-05-20 18:43:18 +03:00

159 lines
4.7 KiB
Markdown

# IQON Deployment Readiness
Purpose: зафиксировать локальную готовность статического deployment-пакета после реализации следующих шагов аудита.
## Contents
- [Scope](#scope)
- [Implemented](#implemented)
- [Verification](#verification)
- [Remaining Gate](#remaining-gate)
## Scope
Локальная проверка выполнена 20 May 2026. Удалённый deploy на reg.ru выполнен 20 May 2026 через FTP без удаления WordPress-файлов.
## Implemented
| Area | Result |
|------|--------|
| Case studies | `/case-studies/` переведён на anonymized outcome snapshots |
| Contact data | `/contact/` использует `office@iqon.com`, `@infobidgebot`, Bucharest |
| Cache busting | Static HTML assets updated from `qa6` to `qa7` |
| Security headers draft | `deploy/.htaccess` CSP tightened and `www.iqon.com` canonical redirect added |
| Content brief | Case-study and contact blockers marked resolved for launch |
| Mobile CTA | Contact CTA heading wrap fixed at 390px |
| Live upload | Static files uploaded to `www/iqon.com` by FTP |
| Live redirect loop | Removed Apache `%{HTTPS}` force block behind nginx |
| Accessibility | Skip link added to all static pages |
## Verification
Live legacy baseline:
```bash
scripts/iqon-phase1-verify.sh https://iqon.com
```
Observed signal:
- Missing security headers.
- Missing viewport and skip link.
- Known HTTP URLs still present.
- Public REST users still exposed.
- `readme.html` still returns `200`.
- XML-RPC HEAD smoke still returns empty reply.
Local static smoke:
```bash
python3 local ThreadingHTTPServer smoke
```
Observed signal:
- `/` returned `200`.
- `/services/` returned `200`.
- `/services/strategy-governance/` returned `200`.
- `/services/enterprise-architecture/` returned `200`.
- `/services/data-analytics/` returned `200`.
- `/services/infrastructure-cloud/` returned `200`.
- `/services/security-continuity/` returned `200`.
- `/industries/` returned `200`.
- `/case-studies/` returned `200`.
- `/contact/` returned `200`.
- `/sitemap.xml` returned `200`.
- `/robots.txt` returned `200`.
- `case_has_selected_outcomes True`.
- `case_has_old_blocker False`.
- `contact_has_infobidgebot 6`.
- `contact_has_phone_fax False`.
Headless Chrome visual smoke:
```bash
python3 -m http.server 8073 --bind 127.0.0.1
Google Chrome --headless=new --window-size=1440,1200
Google Chrome --headless=new --window-size=390,1000
```
Observed signal:
- 10 desktop screenshots created.
- 10 mobile screenshots created.
- `contact-mobile` clipping found and fixed.
- `contact-mobile-fixed.png` captured after the CSS fix.
Static files:
```bash
python3 -c "import xml.etree.ElementTree as ET; ET.parse('sitemap.xml'); print('sitemap ok')"
bash -n scripts/iqon-phase1-verify.sh
PYTHONPYCACHEPREFIX=/private/tmp/iqon-pycache python3 -m py_compile scripts/iqon-sitemap-inventory.py scripts/iqon-generate-redirect-map.py
```
Observed signal:
- `sitemap ok`.
- Shell script syntax passed.
- Python scripts compiled with temporary pycache path.
## Remaining Gate
Before destructive cleanup:
1. Confirm `u0012812_iqon` database archive is downloaded.
2. Keep WordPress files on server until rollback window closes.
3. Decide whether to move WordPress files into `_wordpress_backup/` later.
4. Do not delete `wp-content`, `wp-admin`, `wp-includes`, or DB until explicit cleanup approval.
## Live Deployment
FTP target:
```text
server71.hosting.reg.ru:/www/iqon.com/
```
Rollback set downloaded locally before upload:
```text
/private/tmp/iqon-remote-prestatic-20260520-ftp/
```
Observed live verification:
```bash
scripts/iqon-phase1-verify.sh https://iqon.com
```
Final signal:
- `[OK] iqon Phase 1 verification passed for https://iqon.com`.
- 10 target pages returned `200`.
- `/sitemap.xml` returned `200`.
- `/robots.txt` returned `200`.
- `/wp-json/` returned `403`.
- `/readme.html` returned `403`.
- `/homepage/` redirected to `/`.
- `/services-solutions/` redirected to `/services/`.
## Live Redesign Switch
After owner feedback that the first static upload was not the intended design, live was rolled back to the WordPress entrypoint first, then switched to the `new_redesign` visual direction.
Observed signal:
- `https://iqon.com/` returns the dark `new_redesign` homepage.
- Live HTML contains `theme-color` `#09090b`.
- Live HTML contains `.topbar`, `.hero-cloud`, and `.skip-link`.
- `/styles.css` returns `200 text/css`.
- `/script.js` returns `200 application/javascript`.
- `scripts/iqon-phase1-verify.sh https://iqon.com` returns `[OK]`.
- Headless screenshot captured at `reports/screenshots/2026-05-20/live-new-redesign-home.png`.
---
*Created: 20 May 2026*
*Updated: 20 May 2026*