SEO OPERATING SYSTEM

OH Consultant — SWMS Store

swms.ohconsultant.com.au·Week 2026-26·Baseline set·5/7 stages
YOU ARE HERE · AWAITING REVIEW
Review the changeset — 3 actions waiting
Claude wrote CHANGESET.md and 3 review-ready artifacts under 04-produce/, then stopped. You read each one, initial APPROVE / REJECT in CHANGESET.md, then paste the SHIP prompt below to ship only the approved subset.
CHANGESET · WEEK 2026-26
The review gate · read this end-to-end before pasting the SHIP prompt
seo-os/reports/<domain>/2026-26/CHANGESET.md
# CHANGESET · Week 2026-26 · swms.ohconsultant.com.au

**Status: AWAITING REVIEW. Nothing has shipped. Per the BASELINE prompt, Stage 6 SHIP is not run.**

The artifacts below are review-ready. Reviewer approves, rejects, or edits each one. On approval, Claude runs Stage 6 SHIP only on the approved subset.

---

## Change 1 · NSW WHS s.26A explainer + `/swms/nsw` state landing

**File:** [`04-produce/action-1-nsw-s26a-explainer.md`](./04-produce/action-1-nsw-s26a-explainer.md)
**Type:** New page (informational) + new page (transactional state hub)
**Ship method:** `repo_pr` (Next.js codebase — see config drift note below)
**Reviewer hold:** **`NEEDS_SME_REVIEW`** — the explainer interprets a WHS regulation. A Certified Occupational Hygienist / WHS competent person (per `client.yml` → `sme.reviewer_role`) must sign off in writing on the four regulatory blocks before merge. SME-review block is at the top of the artifact.
**Time-sensitivity:** **Ship by 2026-06-29** to allow 48-72 h for indexing before the 2026-07-01 deadline.

**Falsifiability fields:** see `03-prioritise.md` § Top 3 → #1.

| Reviewer decision | Initial |
|---|---|
| ☐ APPROVE the explainer as drafted (with SME sign-off on the 4 NEEDS_SME_REVIEW blocks) | |
| ☐ APPROVE with edits noted in this file | |
| ☐ REJECT (record reason in `_decisions.md` per CLAUDE.md §3 "Never re-recommend a rejected action without new evidence") | |
| ☐ APPROVE the `/swms/nsw` outline as a coming-soon stub for now, with full page next week | |

---

## Change 2 · Sitewide `Organization` + `WebSite` JSON-LD

**File:** [`04-produce/action-2-organization-schema.md`](./04-produce/action-2-organization-schema.md)
**Type:** Two JSON-LD blocks added to the Next.js root layout
**Ship method:** `repo_pr` — single PR; sitewide blast radius (every page picks up the schema).
**Reviewer hold:** none beyond standard editorial pass. The artifact does not interpret regulations. Operator needs to fill the three `NEEDS_OPERATOR_INPUT` placeholders in the `sameAs` array (LinkedIn page, About page, credentialing-body listing) before merge — leaving placeholders in production is a content error.

**Falsifiability fields:** see `03-prioritise.md` § Top 3 → #2.

| Reviewer decision | Initial |
|---|---|
| ☐ APPROVE the JSON-LD blocks as drafted | |
| ☐ APPROVE with the operator filling the 3 `sameAs` URLs | |
| ☐ REJECT (record reason) | |

### Riders that go with Change 2's PR

**Rider 2a — `client.yml` config drift fix:**
```diff
-  cms: "shopify"
-  ship_method: "diff_for_human_paste"
+  cms: "nextjs"
+  ship_method: "repo_pr"
```
Justification in `02-analyse.md` Pattern 5. 1-line diff.

| Reviewer decision | Initial |
|---|---|
| ☐ APPROVE the config diff | |
| ☐ REJECT (and document why we should continue routing SHIPs as if this is a Shopify store) | |

---

## Change 3 · Homepage `<title>` + `<meta description>` rewrite

**File:** [`04-produce/action-3-homepage-meta-rewrite.md`](./04-produce/action-3-homepage-meta-rewrite.md)
**Type:** Two-line metadata change in `app/page.tsx`
**Ship method:** `repo_pr`
**Reviewer hold:** none. Open Graph + Twitter Card meta should be updated in the same PR (artifact lists the acceptance items).

**Falsifiability fields:** see `03-prioritise.md` § Top 3 → #3.

**Diff:**

```diff
- title: "SWMS Builder — Safe Work Method Statement Templates Australia | OH Consultant",
+ title: "Safe Work Method Statement Templates AU | SWMS Builder",

- description: "Free SWMS builder + 930 CIH-reviewed Safe Work Method Statement templates for every Australian trade. WHS Regulation 2025 compliant. Editable DOCX, 8 state variants. Instant download.",
+ description: "930+ CIH-reviewed SWMS templates aligned to WHS Regulation 2025. Editable DOCX, 8 state variants, instant download. From $99.",
```

| Reviewer decision | Initial |
|---|---|
| ☐ APPROVE the strings as drafted | |
| ☐ APPROVE with edits noted | |
| ☐ REJECT (record reason) | |

---

## What is NOT shipping this week (queued candidates)

Surfaced here so they aren't re-discovered next week:

- Content-similarity sample across 20 `/swms/<task>` pages → **next-week PERCEIVE priority**, settles the doorway-risk reading from `02-analyse.md` Pattern 4.
- GSC + PageSpeed + SEMrush connections → **operator action**; instructions in `01-perceive.md` § Tool connectivity table.
- `Product` + `BreadcrumbList` schema on the 1,278 template pages → **blocked on the doorway-risk verdict**.
- Decay-scan refresh candidates → **unblocks when GSC connects**.
- Link-prospect analyzer run → **unblocks when SEMrush dumps drop into `_inbox/`**.

---

## After this review

1. The reviewer signs off the decisions above (initials in each row).
2. For each APPROVED change, Claude runs **Stage 6 SHIP**: opens the PR(s), submits the indexed URLs via IndexNow + GSC Indexing API where eligible, appends each shipped change to `_decisions.md` with its four falsifiability fields and ship date.
3. **Re-snapshot to `_baseline.json` after SHIP completes.** This week's snapshot is being written *now* (pre-ship) so next week's PERCEIVE has something to diff against — see `_baseline.json` for the captured fields.
4. The MEASURE stage runs **on Friday** of the calendar week (per `workflows/weekly-loop.md` cadence note). For this baseline pass there's no prior-week data to measure against — first real MEASURE pass runs week 2026-27.
PROPOSED ACTIONS · 04-produce/
3 review-ready artifacts
  • action-1-nsw-s26a-explainer.md15 KB
  • action-2-organization-schema.md4 KB
  • action-3-homepage-meta-rewrite.md4 KB
Open each file in your editor (path: seo-os/reports/<domain>/2026-26/04-produce/), read it end-to-end, then go back to CHANGESET.md above and initial APPROVE / REJECT per row.
WEEK 2026-26 · PROGRESS
5 of 7 stages complete
1Perceive
Pull what changed this week
2Analyse
Find the root cause
3Prioritise
Rank by impact ÷ effort
4Produce
Draft the top 3 fixes
5Review
Approve or reject each change
Now
6Ship
Push approved changes live
7Measure
Score past predictions
WEEK 2026-26 · ALL FILES
What Claude wrote this week
Stage outputs
  • 01-perceive.md8 KB
  • 02-analyse.md10 KB
  • 03-prioritise.md10 KB
  • CHANGESET.md5 KB
  • competitor-watch.md3 KB
  • decay-scan.md2 KB
04-produce/ artifacts
  • action-1-nsw-s26a-explainer.md15 KB
  • action-2-organization-schema.md4 KB
  • action-3-homepage-meta-rewrite.md4 KB
INBOX
0 SEMrush exports queued
Drop CSV / XLSX exports into seo-os/reports/swms.ohconsultant.com.au/_inbox/. Backlink dumps → _inbox/backlinks/.
General · Keyword Gap, position changes
No dumps yet
Backlinks · for the link-prospect analyzer
No dumps yet
HISTORY
1 week
  • 2026-266 files
CLIENT CONTEXT · config/client.yml
Reference info from the YAML — click to expand
1 deadlines · 4 competitors
Sells
Pre-written, editable Safe Work Method Statement templates and WHS compliance document packs
Buyer
tradies, subcontractors, site supervisors, PCBUs needing audit-ready paperwork fast
SME reviewer
Certified Occupational Hygienist / WHS competent person
Ship method
diff_for_human_paste
Compliance calendar
  • NSW WHS s.26A2026-07-01drives a spike in NSW-specific SWMS/compliance searches into the deadline
Competitors tracked
occupational-safety.com.auohscompliancesolutions.com.ausafetyculture.comhazardco.com
DECISION LOG · _decisions.md
Every shipped change, with its falsifiability contract
# Decision Log

Every shipped change is appended here with its four falsifiability fields and ship date.

| Date | Change | Observation | Failure check | Leading indicator | Verdict |
|------|--------|-------------|---------------|-------------------|---------|
How this page works: the workflows run in Claude Code, not here. This page reads seo-os/ on disk and tells you which stage you're at + the next prompt to copy. Nothing here writes to your site — all changes go through the REVIEW GATE first. Run prompts are copied to your clipboard; you paste them into Claude Code with seo-os/ as the working directory.