# CT.M2 — AuthoringStudioApplication

## Summary

| Field | Value |
|--------|--------|
| **Module ID** | CT.M2 |
| **Track** | [Content tooling — internal authoring](../tooling/internal_authoring.md) (cross-cutting; not E1–E9) |
| **Stage target** | Prototype |
| **Status** | Planned (see [dependency register](module_dependency_register.md)) |

## Purpose

Internal **authoring UI** (TypeScript-first per [tech stack](../../architecture/tech_stack.md)) for editing **`content/**`** with **validation parity** with CI and a practical **zone graph** authoring experience.

## Responsibilities

- Browse and edit catalog files; **forms** and **pickers** for IDs (items, zones, quests) as catalogs exist.
- **Topology:** Visual **graph** for **ZoneDef** / **ZoneEdge** / **TravelRule** aligned with **E4.M1**.
- **Security:** Internal-only deployment; filesystem or local API access must not become part of the public game surface.

## Key contracts

| Contract | Role |
|----------|------|
| Studio ↔ repo | Read/write JSON (or YAML) under agreed roots; no separate authoring DB as source of truth |
| Validator integration | Invokes **CT.M1** rules for inline feedback |

## Module dependencies

- **CT.M1** — ContentValidationPipeline

## Dependents (by design)

- **CT.M3** — optional integrated UX for reference index and bundles

## Related implementation slices

Content tooling **Slice 2** — studio core + topology editor.

## Source anchors

- Plan: [`internal-content-authoring.md`](../../plans/internal-content-authoring.md)
- [E4.M1 — ZoneGraphAndTravelRules](E4_M1_ZoneGraphAndTravelRules.md)
- [Module dependency register](module_dependency_register.md)
