# Em 0008

- Object ID: `em:task:sha256:6876714a8e96966c6df20119a6fa9d6fe330b802d9b49c84eae9367d95758323`
- Kind: `task`
- Repository path: [`tasks/contracts/EM-0008.json`](https://github.com/yoheinakajima/epistemedia/blob/f92846570180dfa4511263f8ba98ecd18f7772c9/tasks/contracts/EM-0008.json)
- Content digest: `60430bd7338cdfe6c06f4e71c5b18dff113de31aad8a6adbcdd098468e5869a8`

**Also filed under:** [Agent Operations](https://epistemedia.org/topics/agent-operations/), [Research Program](https://epistemedia.org/topics/research-program/)

## Source content

{
  "$schema": "https://epistemedia.com/schemas/task-contract-v1.json",
  "id": "EM-0008",
  "title": "Activate epistemedia.org with an episte.media sharing redirect",
  "status": "ready",
  "change_class": "ordinary-implementation",
  "objective": "Activate epistemedia.org, api.epistemedia.org, and mcp.epistemedia.org as the canonical public surfaces, with episte.media as a path-preserving redirect, from one accepted release manifest without rewriting protected identifiers or accepted history.",
  "depends_on": ["EM-0001"],
  "supersedes": "EM-0006",
  "authority": {
    "allowed_paths": [
      ".github/**",
      "README.md",
      "docs/**",
      "ops/**",
      "src/**",
      "tests/**",
      "runs/**",
      "releases/**",
      "pyproject.toml",
      "server.json",
      "llms.txt",
      "Dockerfile",
      "compose.yaml"
    ],
    "forbidden_paths": [
      "constitution/**",
      "schemas/**",
      "policies/**",
      "governance/events/**",
      "tasks/contracts/EM-0001.json",
      "tasks/contracts/EM-0002.json",
      "tasks/contracts/EM-0003.json",
      "tasks/contracts/EM-0004.json",
      "tasks/contracts/EM-0005.json",
      "tasks/contracts/EM-0006.json",
      "tasks/contracts/EM-0007.json"
    ]
  },
  "acceptance": [
    "all active deployment configuration and current-state documentation use epistemedia.org and its declared service subdomains as canonical",
    "episte.media serves no independent canonical content and redirects each supported path to the same path on epistemedia.org",
    "historical accepted records and protected identifier namespaces are not silently rewritten",
    "the default-hostname Pages bootstrap publishes without a CNAME before custom-domain activation",
    "the canonical human site serves one accepted static manifest over HTTPS",
    "API and MCP serve the same catalog and frontier as the human site when externally activated",
    "root and path-scoped llms.txt and Markdown alternates resolve",
    "custom-domain redirects and canonical URLs are correct after verified DNS activation",
    "MCP protocol, Origin, caching, and error tests pass against production",
    "anonymous reads have declared rate and resource limits",
    "deployment does not receive contribution or integration authority",
    "a production run receipt records DNS, commit, manifests, checksums, endpoints, redirects, and observed limitations"
  ],
  "evidence": [
    {
      "type": "owner-statement",
      "context": "The owner controls epistemedia.org and episte.media and selected the .org as canonical with the shorter domain for sharing."
    }
  ],
  "limitations": [
    "Existing schema and policy identifiers under epistemedia.com are protected protocol identifiers; EM-0009 governs their migration.",
    "At registration, epistemedia.org still resolved to registrar parking addresses and episte.media had no apex address.",
    "DNS management, production runtime credentials, package publisher identity, and irreversible registry publication remain separately gated."
  ]
}
