# THIS YOU — TELEPORT GPT Handoff v1

## Goal

Bridge the current private Custom GPT production workflow into THIS YOU without OpenAI API calls.

Current flow:

`THIS YOU A1 input + reader photos → Custom GPT → production handoff ZIP → /teleport/ → GO → THIS YOU drafts`

Later the same import service can sit behind a GPT Action or an OpenAI API runner.

## Import philosophy

TELEPORT is an **ingestion bridge**, not an approval bypass.

It may import:
- product selection;
- Product Visual Locks / Dynamic Feature Maps;
- HERO image;
- personalization copy;
- fidelity result.

It never auto-sets human approval.

Partial packages are valid. If the GPT has only reached HERO, TELEPORT imports only through HERO and leaves copy/fidelity pending.

## Current handoff compatibility

The V1 importer intentionally understands both canonical result schemas and the first observed GPT handoff shape:
- `01_product_selection_result.json`
- `02_visual_locks.json`
- `03_personalization_input.json`
- `04_hero_selection.json`
- `final_hero.png`
- `manifest.json`

Compatibility normalization:
- null/local product IDs are remapped using exact product URL, then unique slot;
- legacy `remote_inspected` references receive explicit `manual_chatgpt_web` inspection metadata when the handoff itself states that exact official imagery was inspected;
- missing product `verification_note` does **not** become an invented verification claim: the product is imported UNVERIFIED with a mandatory fresh re-verification warning.

## Preferred future GPT package

At the end of a production run, the GPT should export:

```text
manifest.json
01_product_selection_result.json
02_visual_lock_result.json
03_personalization_result.json
04_fidelity_result.json
final_hero.png
```

Inputs/debug artifacts may be kept under `source/`, but result files must be canonical and schema-valid.

`manifest.json` should include:

```json
{
  "schema": "this_you.teleport_handoff.v1",
  "issue_slug": "new-york-autumn-2026",
  "reader_id": 4,
  "chapter_number": 3,
  "production_state": "hero|fidelity_complete|needs_human_review",
  "hero_file": "final_hero.png"
}
```

## Human gates

After TELEPORT:
- product/price verification remains human/admin controlled;
- Visual Lock approval remains human;
- HERO approval remains human;
- final issue approval remains human.

## Existing-selection safety

If the chapter already contains the same exact product URLs in the same slots, TELEPORT preserves those rows.

If the chapter contains a different selection, TELEPORT stops rather than silently replacing it.

## ZIP handling

The importer contains a pure-PHP ZIP reader supporting normal STORE and DEFLATE entries. This avoids the Laragon `ZipArchive` dependency.
