# Review brief: GeoIP implementation plan 1

You are GPT-6 reviewing an implementation plan independently of its author.
Your output is a findings report, not an edit. Do not modify any file.

## What to read

1. The plan: `docs/superpowers/plans/2026-10-06-platform-geoip-plan1.md`.
2. The spec it implements (rev 6, reviewed over five rounds):
   `docs/superpowers/specs/2026-10-06-platform-geoip-design.md`. The spec is
   settled; report where the PLAN fails the spec, not where you would
   change the spec.
3. `docs/superpowers/plans/2026-10-06-platform-geoip-FACTS.md` (measured).
4. Every file the plan names, in this worktree, at the lines it cites.

## What matters most

Each task is handed to a separate implementer who reads only that task.

- **Code that will not compile or will not behave as the plan claims.**
  Wrong signatures, missing imports, fields or helpers that do not exist,
  a test that would pass for the wrong reason or could never fail, a test
  that cannot fail before the implementation step.
- **Claims about existing code** (line numbers, helper names, behaviour)
  that are wrong. Check each.
- **Spec requirements with no task**, or a task that implements them
  differently from the spec (security-relevant ones first: the strip,
  adoption trust, the door, rejected hops, the tunnel marks, D1 expiry,
  the publish slot, the verdict).
- **Ordering:** a task that depends on something a later task produces.
- **Concurrency and lifecycle bugs** in the code the plan supplies
  (geoMirror, geoipPublisher, Swappable).

## Output

A numbered list, most severe first: severity (P1 = would ship a bug or
fail to build, P2 = an implementer would likely get it wrong, P3 =
clarity), task and step, evidence with file:line, and a concrete fix.
End with a one-line verdict: ready to build, or revise.
