openapi: 3.1.0
info:
  title: TenantPilot — Managed Tenant Onboarding (073)
  version: 0.1.0
  description: |
    Onboarding wizard + tenantless operation run viewer routes.

    These are UI endpoints (Filament/Livewire), documented here for contract clarity.
servers:
  - url: https://example.invalid
paths:
  /admin/onboarding:
    get:
      summary: Managed tenant onboarding wizard (canonical entry point)
      responses:
        '200':
          description: Renders onboarding wizard page in the current workspace context.
        '302':
          description: Redirects to workspace chooser when no workspace is selected.
        '403':
          description: Workspace member missing onboarding capability.
        '404':
          description: Workspace not found or user is not a member (deny-as-not-found).

  /admin/operations/{run}:
    get:
      summary: Tenantless operation run viewer
      parameters:
        - name: run
          in: path
          required: true
          schema:
            type: integer
      responses:
        '200':
          description: Renders operation run details.
        '404':
          description: Run not found or actor is not a member of the run workspace (deny-as-not-found).

  /admin/register-tenant:
    get:
      summary: Legacy tenant registration entry point
      deprecated: true
      responses:
        '404':
          description: Must be removed / behave as not found (FR-001).

  /admin/new:
    get:
      summary: Legacy onboarding entry point
      deprecated: true
      responses:
        '404':
          description: Must not exist and must behave as not found (FR-004).

  /admin/managed-tenants/onboarding:
    get:
      summary: Legacy onboarding entry point
      deprecated: true
      responses:
        '404':
          description: Must not exist and must behave as not found (FR-004).
