Ezz Ashater
Start a conversation

I answer my own messages.

Work / dossier

SOS Trading and Contracting

An industrial fire-safety contractor whose credibility is technical before it is visual. Rebuilt from a WordPress site into a complete digital presence, and still operated.

Entity plan — SOS Trading and Contracting drawn 2026-10-05
sector Fire protection engineering · Egypt
live since 2026-06-05
pages 14 routes, English
stack Astro static · self-hosted VPS · nginx + Traefik
predecessor WordPress — migrated out
status Live · operated
Set out from the record, 2026-10-05. The link above goes to the live entity — that is the evidence, not this page.
SOS Trading and Contracting — homepage as it runs today
Plate 01 sos-fire.com · captured 2026-07-31 visit the live entity →

The record.

2026-06-05

Launched — 11 pages, structured data and agent-readable signals from day one, on infrastructure the client owns.

2026-07-06

Contact routing wired end-to-end and tested — a message reaches a person, not an unread inbox.

2026-07-16

First fully pipelined release: build, validate, deploy, and verify with no hands on the server.

2026-07-30

Redirect and not-found behaviour hardened; the fix was verified against the live production responses the same day.

2026-09-18

Search-result data on the six service pages corrected; Google’s own live test read them without error on 2026-09-29.

2026-10-01

Search titles and descriptions shortened on eight pages so they read in full.

Corrections, left visible.

What broke on this entity, left visible — struck through, corrected in red, and turned into a control: automated where it can be verified reliably, checked by hand where judgement is still needed.

Security headers were configured once at the top level, so every page inherits them.

One page-level header declaration silently cancelled the entire inherited set — a documented behaviour of the web server that no error message reports.

Shared header include, explicitly imported wherever a local header exists; the served headers are then checked with an audit run by hand.

The deploy succeeded, so visitors have the new version.

The CDN kept serving month-old files — cached as immutable under the same address.

Versioned asset addresses, and a release check that fetches the exact URLs the live page requests and inspects the cache headers.

A redirect is a detail.

Secure pages were redirecting visitors to their insecure counterparts, and missing pages answered "found".

The site audit tool now checks redirect and not-found behaviour, and every live site was swept for the same fault.

A fire-safety contractor is judged by inspectors, procurement engineers, and — increasingly — machines. This entity is built to be legible to all three, and the correction record above is how it stays that way.

Working together

Client work starts with a conversation — no commitment, no pitch. If it turns out I'm not the right fit, I'll say so.