# Phase handover — Platform Published Resource Architecture

| Field | Value |
| --- | --- |
| Phase / patch ID | `platform-published-resource-arch` |
| Area | Platform / AI Framework + Experience architecture |
| Date | 2026-07-27 |
| Kind | Documentation / architecture only |
| ADR | [ADR-022](../architecture/adr/ADR-022.md) |

## Summary

Introduced the platform-wide **Published Resource** abstraction and **Publish Target Registry** contract. Cross-service consumers (Payment, Communication, Short Link, QR, Analytics, CRM, verticals, future products) attach via **`publish_id` only**. Form / Survey / Appointment standalone publishing is mandated. Standard public URL prefixes are reserved. No backend, frontend, migration, or API implementation was performed.

## Delivered documents

| Document | Path |
| --- | --- |
| Architecture | [published-resource-architecture.md](../architecture/published-resource-architecture.md) |
| ADR | [ADR-022](../architecture/adr/ADR-022.md) |
| Contracts | [published-resource-contracts.md](../reference/published-resource-contracts.md) |
| Experience handover | [phase-handover/phase-experience-published-resource-arch.md](phase-experience-published-resource-arch.md) |

## Framework impact

- Runtime Read Policy: architecture docs remain load-on-reference; ADR-022 listed for publish integration work.
- Manifests updated with docs-only phase entry `platform-published-resource-arch` (complete).
- No business phase IDs 11.0–11.10 altered.

## Non-goals confirmed

- No schema / Alembic / REST implementation
- No frontend public routers
- No Torbat Link / QR / Card / Booking product code
- No Payment or Communication code changes

## Next

Implementation of Publish Target Registry and resolution APIs requires a **future registered phase** (Experience and/or platform). Until then, agents must treat this as architecture law for any new public-surface design.

| Field | Value |
| --- | --- |
| Recommended next phase | Existing track milestones (e.g. Payment 14.6) or a future `experience` registry implementation phase when scoped |
| Blockers for next phase | None for other tracks; registry implementation must not start without Discovery + phase registration |
