WIKI/SITE LAW

SITE LAW

Updated 3 weeks ago
# SITE LAW — The Sinner Kingdom Web Properties
*v1.0 · 2026-03-14 · Written after the wiki got nuked*

---

## THE GOLDEN RULE

**There is one canonical file per thing. Edit the source. Push the copy. Never edit the copy directly.**

---

## THE TWO PROPERTIES

| Property | What it is | Live URL | Canonical Source |
|----------|-----------|----------|-----------------|
| **WIKI** | CORE LORE knowledge base | `/kingdom-wiki` route | `~/Desktop/CORE LORE/WIKI.html` |
| **THE SITE** | sinner-king.com | sinner-king.com (DNS pending) | `~/Desktop/THE_TOWER/FORGE_CLAUDE/04_📦_PROJECTS/THE_SITE/` |

---

## THE WIKI — LAW

### Source of Truth
```
~/Desktop/CORE LORE/WIKI.html    ← EDIT THIS ONE
```

### How It Gets Served
The wiki is a single HTML file. The Next.js site serves it via iframe:
```
page.tsx (route: /kingdom-wiki) → iframe → /public/kingdom-wiki.html
```

### Change Process (Claude)
1. Edit `CORE LORE/WIKI.html`
2. Copy to public: `cp "CORE LORE/WIKI.html" "THE_SITE/public/kingdom-wiki.html"`
3. Commit + push → Vercel auto-deploys

### Change Process (Brandon)
Same — but just tell Claude what you want changed. Don't hand-edit the HTML.

### Aeris — FORBIDDEN from touching the wiki directly
Aeris has write access to many things. **She does NOT touch WIKI.html.** If she needs to add content, she writes a RAVEN message to Claude with the proposed additions. Claude reviews and applies them.

This is the lesson from the nuke incident.

### Sandbox
Open `CORE LORE/WIKI.html` directly in a browser (`file://`) — it runs fully offline. Test there before committing.

---

## THE SITE — LAW

### Source of Truth
```
~/Desktop/THE_TOWER/CLAUDES_WORKSHOP/04_📦_PROJECTS/THE_SITE/   ← EVERYTHING LIVES HERE
```

### Local Dev
```bash
cd THE_SITE
npm run dev        # → localhost:3000
```
Test ALL changes locally before pushing. If it's broken locally, it's broken live.

### Deploy Process
```
local dev → git commit → git push → Vercel auto-deploys
```
Vercel is connected to the repo. Push = deploy. No manual deploy step.

### Territory Ownership

**THE TOWER** is where the site and wiki live. Claude in THE TOWER is the final authority on what goes live. Nothing ships without TOWER Claude's sign-off.

**THE FORGE** is where the systems live (Overmind, SCRYER, RAVEN, mechanisms). Separate concern. Forge Claude and Aeris (AERIS_FORGE) operate there.

### Who Touches What

| Person/Agent | Role | Can do | Final say? |
|-------------|------|--------|------------|
| **Brandon** | King | Everything | ✅ Always |
| **Claude (TOWER)** | Site Architect | Edit, commit, push, review | ✅ Last reviewer before push |
| **Claude (FORGE)** | Systems Builder | Systems work only | ❌ Not for site |
| **Aeris (AERIS_THRONE)** | Creative/Design | Suggest, draft to mailbox | ❌ Cannot push |
| **Aeris (AERIS_FORGE)** | Executor | Suggest, draft to mailbox | ❌ Cannot push |

**The chain:** Aeris/Forge suggest → TOWER Claude reviews → Brandon approves → TOWER Claude pushes.

If something needs to go to the site fast and Brandon isn't available, TOWER Claude can push — but only after self-review. Never auto-push from a loop or automation.

---

## THE BACKUP LAW

### Wiki backups are automatic
Every time Claude edits `WIKI.html`, it lives in:
1. `CORE LORE/WIKI.html` (canonical)
2. `THE_SITE/public/kingdom-wiki.html` (served copy)
3. Git history (once committed)
4. `kingdom-wiki-ARCHIVED-YYYY-MM-DD.html` for major redesigns

### If the wiki gets nuked again
```bash
# Check git history
cd THE_SITE && git log --oneline public/kingdom-wiki.html

# Restore from last commit
git checkout HEAD~1 -- public/kingdom-wiki.html
cp public/kingdom-wiki.html "~/Desktop/CORE LORE/WIKI.html"
```

### THE_SITE git backup
```bash
# Required — not yet done
gh repo create sinner-kingdom-site --private
git remote add origin [URL]
git push -u origin main
```
**Brandon action: run the above. Takes 3 minutes. Prevents total loss.**

---

## THE KINGDOM_BACKUP LAW

Three repos needed (Brandon action, `gh repo create ×3`):
- `sinner-kingdom-site` — THE_SITE
- `sinner-kingdom-core-lore` — CORE LORE (the wiki source)
- `sinner-kingdom-forge` — THE_FORGE (optional, has secrets to scrub)

---

## WHEN YOU'RE CONFUSED ABOUT WHERE SOMETHING LIVES

**Wiki content?** → `CORE LORE/WIKI.html`
**Site pages/routes?** → `THE_SITE/src/app/`
**Static files served by the site?** → `THE_SITE/public/`
**Old Sulphur Kawaii wiki design?** → `THE_SITE/public/kingdom-wiki-ARCHIVED-2026-03-14.html`
**Site design/architecture?** → `THE_SITE/NORTH_STAR.md`

---

## THE PLAN BEFORE LAUNCH

*In order. One at a time. Do not skip steps.*

### Step 1 — Harden (before any new features)
- [ ] Brandon: `gh repo create` for THE_SITE (git backup)
- [ ] Brandon: GoDaddy DNS — CNAME @ → cname.vercel-dns.com (2 clicks)
- [ ] Claude: clean local build passes (`npm run build`)

### Step 2 — Wiki complete
- [ ] Wiki is merged ✅ (done today)
- [ ] Stub pages: fill in or remove from nav (Aeris Cockpit, Research section)
- [ ] Wiki accessible at sinner-king.com/kingdom-wiki ← blocked on DNS

### Step 3 — Main site pages
- [ ] Landing page (the one that greets strangers)
- [ ] Kingdom Map (/kingdom-map — functional, needs design polish)
- [ ] Blog (Ghost or simple Astro — TBD with Brandon)

### Step 4 — Blog
- [ ] Blog name (Brandon decision, still pending)
- [ ] Ghost CMS or static? (Brandon decision)

### Step 5 — Go live
- [ ] DNS resolves
- [ ] All pages build clean
- [ ] Brandon reviews on localhost
- [ ] Push

---

*"We build once. We build right. We don't nuke the wiki."*

⛬ Claude — 2026-03-14 · Site Law v1.0